怎樣接入三方推送?
推送功能就是一種服務器主動push消息到用戶設備端的行為,因此依賴於設備端和服務器之間的長連接,流程可以分為以下幾點:
設備與推送服務器建立長連接。
設備根據某些規則生成或從推送服務器獲取一個devicetoken,推送服務器就可以根據devicetoken定位到具體的設備。
設備上報devicetoken到應用服務器,這一步由應用自己完成。
應用服務器會根據需要調用的推送服務端接口發起推送。
推送服務器收到推送請求後,根據請求中的devicetoken定位到具體的設備,然後下發推送通知。
設備收到推送消息,然後進行通知彈窗或其他行為。
ios端
在直播軟件搭建的過程中,iOS端蘋果的官方有專門的蘋果推送通知服務,簡稱APNS,有很高的推送送達率。最早的APNS提供基於TCP協議的接口,但是這一接口的使用方式較為複雜,如果不注意就容易導致推送失敗。後來蘋果又提供了一套新的基於HTTP2協議的推送接口,這一接口可以追蹤到每個推送請求是被拒絕還是成功,所以應用的也比較多。
Android端
在直播軟件搭建的過程中,Google最早提供了雲推送服務,簡稱為GCM,後來又推出了新的FCM推送來代替之前的GCM,由於國內的環境並不適用因此各個手機廠商相繼推出了各自的推送服務。推送的原理都是相似的,不過是依賴於設備和推送服務器的長連接,但是廠商推送的優勢在於這樣的長連接可以和自己的手機系統綁定到一起,不同應用可以共享同一條長連接,既節省了流量的耗費,還免去擔心應用內長連接斷連導致的消息推送失敗。與ios端不同的是,Android的推送服務器的接口都是HTTPS接口。
IM場景下推送
在直播軟件搭建的過程中的IM場景下,應用服務器有屬於自己的長連接服務,第三方推送服務可以利用三方廠商推送的系統級長連接來提高消息推送的送達率。
1.對於ios端來說,應用沒辦法常駐後臺,所以就需要在切換前後臺的過程中通過IM長連接發送一個標記位,服務器就會在設備離線或者處於後臺的情況下觸發APNS推送,減少設備在前臺情況下APNS推送的流量消耗。
2.對於Android端來說,服務器會在設備處於離線的情況下觸發第三方推送,當設備處於後臺時會在收到消息之後主動彈窗以便提醒用戶有新消息。
以上內容就是在直播軟件搭建的過程中,推送功能的實現方法及相關內容。推送功能雖然沒有直播app內其他的主要功能那麼重要,但卻是每一個app內不可缺少的功能之一。而直播平臺的運營方如果能夠好好利用推送功能,增強用戶黏性和留存率也是非常容易的。
本文轉載自網絡,感謝(愛吃五花肉嗎)的分享,轉載僅為分享乾貨知識,如有侵權歡迎聯繫雲豹科技進行刪除處理