廠商推送
顧名思義燎潮,廠商推送指的就是手機(jī)硬件廠商提供的系統(tǒng)級(jí)別的推送服務(wù)。因?yàn)樗窍到y(tǒng)服務(wù)扼倘,隨手機(jī)開機(jī)后她就一直存在著确封,有效地保證了推送通道的高可用性。在網(wǎng)絡(luò)暢通和推送消息內(nèi)容合法的情況下再菊,通過廠商通道推送消息給該型號(hào)手機(jī)爪喘,不論應(yīng)用是否存活,都保證消息推送到位纠拔,所以為了拉活秉剑、促新、留存绿语,我們絕對(duì)不能錯(cuò)過她們------廠商推送秃症,消息高效觸達(dá)的保障。另外文末有捷徑哦
推送服務(wù)
為開發(fā)者提供的消息推送服務(wù)吕粹,建立了從云端到手機(jī)端的消息推送通道种柑,為開發(fā)者提供想客戶端應(yīng)用實(shí)時(shí)推送消息的服務(wù),使應(yīng)用可以將最新信息及時(shí)通知用戶匹耕,從而構(gòu)筑良好的用戶關(guān)系聚请,提升用戶的感知和活躍度。
關(guān)于應(yīng)用推送稳其,相信作為開發(fā)者都知道有很多方式進(jìn)行實(shí)現(xiàn)(各大推送SDK)驶赏。不同的推送SDK,產(chǎn)生了多種多樣的推送支持服務(wù)既鞠,實(shí)現(xiàn)方式也有差異煤傍。隨著Google對(duì)推送的規(guī)范,手機(jī)廠商也提供了一套推送服務(wù)嘱蛋,通過系統(tǒng)推送服務(wù)蚯姆,讓推送更安全可靠五续。
有了這么多推送SDK,到底要選哪一種龄恋?
A:我一直在用某某推送SDK疙驾,用習(xí)慣了,繼續(xù)用吧郭毕,效果挺好的它碎。
B:手機(jī)廠商既然提供了系統(tǒng)推送服務(wù),推送達(dá)到了更高显押,更安全可靠扳肛,我選手機(jī)廠商的。
……
選擇哪一種煮落,適合自己最重要敞峭,蘿卜白菜各有所愛嘛~
廠商推送服務(wù)平臺(tái)
華為推送小米推送魅族推送OPPO推送FCM推送第三方推送…
這里列舉了手機(jī)廠商通道推送服務(wù)和第三方推送,關(guān)于第三方推送就不過多介紹了蝉仇,主要分析對(duì)比手機(jī)廠商推送旋讹。
支持平臺(tái)
?
推送類型
?通知欄消息透傳消息
推送目標(biāo)
異同:
小米:
1.同一應(yīng)用前提下,設(shè)置別名是唯一的轿衔,同一個(gè)別名不能對(duì)應(yīng)多個(gè)RegID沉迹,alias對(duì)應(yīng)的設(shè)備以最后一次setalias對(duì)應(yīng)的設(shè)備為準(zhǔn)。(使用場景:單點(diǎn)登錄)
2.支持useraccout進(jìn)行推送害驹,一個(gè)user?account可對(duì)應(yīng)20臺(tái)以內(nèi)的設(shè)備鞭呕。(使用場景:單賬號(hào)多點(diǎn)登錄同時(shí)接收消息)
3.訂閱標(biāo)簽無上限,別名長度不要求
魅族:
1.同一個(gè)別名可以對(duì)應(yīng)多個(gè)設(shè)備
2.別名不能超過20個(gè)字符
3.標(biāo)簽限額100個(gè)
OPPO:
1.全量推送范圍是前一天以及更早的注冊設(shè)備
2.單一設(shè)備推送是注冊成功的設(shè)備宛官,不受是否是前一天的注冊限制
FCM推送:
1.訂閱標(biāo)簽無上限
推送落地方式
推送通知提示類型
推送多樣性
?
推送國際化
?
推送富媒體
?
推送頻率限制
?
推送客戶端感知
?
其他:
華為推送:
1.目前調(diào)用一次接口葫松,最多支持1000個(gè)deviceToken
2.接入新版push,需更新華為移動(dòng)服務(wù)
3.非華為手機(jī)可以使用華為Push服務(wù)底洗,但需要安裝華為移動(dòng)服務(wù)腋么,并且不通過系統(tǒng)PUSH,效果沒有華為手機(jī)上好
小米推送:
1.支持通知分類亥揖,相同通知分類消息會(huì)存在替換(新的消息會(huì)覆蓋之前的)珊擂,不同類通知可以在通知欄并存。最多可以有10001類通知并存
2.支持應(yīng)用版本推送
3.支持機(jī)型推送
4.開啟/關(guān)閉app在前臺(tái)時(shí)的通知顯示可以服務(wù)端來設(shè)置
魅族推送:
1.單個(gè)設(shè)備 1 個(gè)月內(nèi)不活躍费变,將取消訂閱
2.可切換推送消息開關(guān)(app可自由選擇是否開啟此功能)
3.通知欄和透傳消息開關(guān)互不影響
4.關(guān)閉開關(guān)不會(huì)取消 PushId 訂閱摧扇,只是對(duì)應(yīng)的消息無法推送
5.可自定義通知圖標(biāo)
6.在Flyme系統(tǒng)(4.0,4.5挚歧,5)上扛稽,會(huì)直接使用系統(tǒng)長連接通道,所有app會(huì)和系統(tǒng)共享一個(gè)長連接
OPPO推送:
1.每天僅可推送前一天累計(jì)用戶數(shù)同等數(shù)量的消息數(shù)(不限制推送的用戶及單個(gè)用戶接收數(shù)滑负,僅限制當(dāng)天推送總量)
2.全量推送時(shí)庇绽,全量用戶不包含當(dāng)天新注冊的锡搜,當(dāng)太難新注冊有T+1限制,需注冊第二天包含在全量中瞧掺,單個(gè)用戶推送不受注冊T+1限制
3.在最新ColorOS系統(tǒng)上,會(huì)直接使用系統(tǒng)長連接通道凡傅,所有app會(huì)和系統(tǒng)共享一個(gè)長連接
4.OPPO推送不是完全對(duì)外開放辟狈,只對(duì)在OPPO應(yīng)用市場上架,并等級(jí)達(dá)到A級(jí)的應(yīng)用才有資格申請Push服務(wù)
5.OPPO通道目前不太穩(wěn)定夏跷,時(shí)好時(shí)壞哼转,反饋客服,內(nèi)部已在做優(yōu)化槽华,靜候更新~
FCM推送:
1.支持折疊和不折疊消息展示在通知欄(不折疊消息展示時(shí)壹蔓,F(xiàn)CM不保證傳遞順序,例如聊天消息或者關(guān)鍵消息)
2.對(duì)于Android猫态,不折疊情況下佣蓉,最多可存儲(chǔ)100條消息。達(dá)到此限值后亲雪,所有存儲(chǔ)的消息都將被舍棄勇凭。設(shè)備在重新聯(lián)網(wǎng)后將受到一條特殊消息,提示已達(dá)到此上限义辕。之后虾标,應(yīng)用可以正常處理該狀況,一般情況下回請求與應(yīng)用服務(wù)器完全同步灌砖。
3. FCM允許應(yīng)用服務(wù)器在任意指定時(shí)間內(nèi)為每臺(tái)Android設(shè)備使用最多4個(gè)不同的折疊鍵
4.如果設(shè)備已有一個(gè)月未連接到 FCM璧函,F(xiàn)CM 仍然會(huì)接受消息,但會(huì)立即將其舍棄
技術(shù)支持
上述就是一些廠商推送通用集成總結(jié)基显。
小結(jié)
看到有這么多的廠商推送蘸吓,想要達(dá)到最佳效果,是不是想把廠商推送都集成到應(yīng)用中续镇,達(dá)到最佳效果美澳,以提高推送到達(dá)率和穩(wěn)定性,但是一一集成的成本高效率慢:集成方式不統(tǒng)一摸航,各家API接口也不盡相同等制跟。那么是否有捷徑呢?MobPush就是聚合了各家廠商(華為酱虎、魅族雨膨、小米、OPPO读串、FCM聊记、APNS等)推送撒妈,同時(shí)也實(shí)現(xiàn)了自己的推送通道,在都不滿足各大廠商通道推送時(shí)使用自身通道推送排监,有效保證消息正常被用戶接收狰右。
而開發(fā)者在集成第三方時(shí)經(jīng)常會(huì)碰到一些問題,畢竟是別人的東西出錯(cuò)很不好排查舆床,雖然廠商大大們也有提供相關(guān)技術(shù)支持下棋蚌,但是并不是一直、及時(shí)的能幫忙解決問題挨队,而MobPush則提供了24小時(shí)技術(shù)支持服務(wù)谷暮,完全負(fù)責(zé)的協(xié)助開發(fā)者解決問題。
MobPush更好的支持了國外推送盛垦,因FCM在國內(nèi)支持不友好湿弦,但是MobPush使FCM的國內(nèi)推送與國外推送一樣好用。并且提供Android腾夯、iOS颊埃、Unity、coco2d俯在、js等平臺(tái)竟秫,滿足不同平臺(tái)推送的需求,后續(xù)也會(huì)更多的支持其他平臺(tái)跷乐。