顧名思義,廠商推送指的就是手機硬件廠商提供的系統級別的推送服務。由於她是系統服務,隨手機開機後她就一直存在着,有效地保證了推送通道的高可用性。在網絡暢通和推送消息內容合法的狀況下,經過廠商通道推送消息給該型號手機,不論應用是否存活,都保證消息推送到位,因此爲了拉活、促新、留存,咱們絕對不能錯過她們------廠商推送,消息高效觸達的保障。另外文末有捷徑哦安全
爲開發者提供的消息推送服務,創建了從雲端到手機端的消息推送通道,爲開發者提供想客戶端應用實時推送消息的服務,使應用能夠將最新信息及時通知用戶,從而構築良好的用戶關係,提高用戶的感知和活躍度。服務器
關於應用推送,相信做爲開發者都知道有不少方式進行實現(各大推送SDK)。不一樣的推送SDK,產生了多種多樣的推送支持服務,實現方式也有差別。隨着Google對推送的規範,手機廠商也提供了一套推送服務,經過系統推送服務,讓推送更安全可靠。網絡
有了這麼多推送SDK,到底要選哪種?app
A:我一直在用某某推送SDK,用習慣了,繼續用吧,效果挺好的。優化
B:手機廠商既然提供了系統推送服務,推送達到了更高,更安全可靠,我選手機廠商的。3d
……cdn
選擇哪種,適合本身最重要,蘿蔔白菜各有所愛嘛~blog
華爲推送接口 |
小米推送開發 |
魅族推送 |
OPPO推送 |
FCM推送 |
第三方推送… |
這裏列舉了手機廠商通道推送服務和第三方推送,關於第三方推送就不過多介紹了,主要分析對比手機廠商推送。
異同:
小米:
1.同一應用前提下,設置別名是惟一的,同一個別名不能對應多個RegID,alias對應的設備以最後一次setalias對應的設備爲準。(使用場景:單點登陸)
2.支持useraccout進行推送,一個user account可對應20臺之內的設備。(使用場景:單帳號多點登陸同時接收消息)
3.訂閱標籤無上限,別名長度不要求
魅族:
1.同一個別名能夠對應多個設備
2.別名不能超過20個字符
3.標籤限額100個
OPPO:
1.全量推送範圍是前一天以及更早的註冊設備
2.單一設備推送是註冊成功的設備,不受是不是前一天的註冊限制
FCM推送:
1.訂閱標籤無上限
1.目前調用一次接口,最多支持1000個deviceToken
2.接入新版push,需更新華爲移動服務
3.非華爲手機可使用華爲Push服務,但須要安裝華爲移動服務,而且不經過系統PUSH,效果沒有華爲手機上好
1.支持通知分類,相同通知分類消息會存在替換(新的消息會覆蓋以前的),不一樣類通知能夠在通知欄並存。最多能夠有10001類通知並存
2.支持應用版本推送
3.支持機型推送
4.開啓/關閉app在前臺時的通知顯示能夠服務端來設置
1.單個設備 1 個月內不活躍,將取消訂閱
2.可切換推送消息開關(app可自由選擇是否開啓此功能)
3.通知欄和透傳消息開關互不影響
4.關閉開關不會取消 PushId 訂閱,只是對應的消息沒法推送
5.可自定義通知圖標
6.在Flyme系統(4.0,4.5,5)上,會直接使用系統長鏈接通道,全部app會和系統共享一個長鏈接
1.天天僅可推送前一天累計用戶數同等數量的消息數(不限制推送的用戶及單個用戶接收數,僅限制當天推送總量)
2.全量推送時,全量用戶不包含當天新註冊的,當太難新註冊有T+1限制,需註冊次日包含在全量中,單個用戶推送不受註冊T+1限制
3.在最新ColorOS系統上,會直接使用系統長鏈接通道,全部app會和系統共享一個長鏈接
4.OPPO推送不是徹底對外開放,只對在OPPO應用市場上架,並等級達到A級的應用纔有資格申請Push服務
5.OPPO通道目前不太穩定,時好時壞,反饋客服,內部已在作優化,靜候更新~
1.支持摺疊和不折疊消息展現在通知欄(不折疊消息展現時,FCM不保證傳遞順序,例如聊天消息或者關鍵消息)
2.對於Android,不折疊狀況下,最多可存儲100條消息。達到此限值後,全部存儲的消息都將被捨棄。設備在從新聯網後將受到一條特殊消息,提示已達到此上限。以後,應用能夠正常處理該情況,通常狀況下回請求與應用服務器徹底同步。
3. FCM容許應用服務器在任意指定時間內爲每臺Android設備使用最多4個不一樣的摺疊鍵
4.若是設備已有一個月未鏈接到 FCM,FCM 仍然會接受消息,但會當即將其捨棄
上述就是一些廠商推送通用集成總結。
看到有這麼多的廠商推送,想要達到最佳效果,是否是想把廠商推送都集成到應用中,達到最佳效果,以提升推送到達率和穩定性,可是一一集成的成本高效率慢:集成方式不統一,各家API接口也不盡相同等。那麼是否有捷徑呢?MobPush就是聚合了各家廠商(華爲、魅族、小米、OPPO、FCM、APNS等)推送,同時也實現了本身的推送通道,在都不知足各大廠商通道推送時使用自身通道推送,有效保證消息正常被用戶接收。
而開發者在集成第三方時常常會碰到一些問題,畢竟是別人的東西出錯很很差排查,雖然廠商大大們也有提供相關技術支持下,可是並非一直、及時的能幫忙解決問題,而MobPush則提供了24小時技術支持服務,徹底負責的協助開發者解決問題。
MobPush更好的支持了國外推送,因FCM在國內支持不友好,可是MobPush使FCM的國內推送與國外推送同樣好用。而且提供Android、iOS、Unity、coco2d、js等平臺,知足不一樣平臺推送的需求,後續也會更多的支持其餘平臺。