2
A
回答
14
的不同的技術來發送推送通知可以列出如下
- Android雲端到OS2.2 +
- 用於預OS2.2設備的其它技術設備通訊(C2DM)。
Cloud to Device Messaging(C2DM)OS2.2 +:Android平臺中使用的標準推送通知方法稱爲Android Cloud to Device Messaging(C2DM)。該服務提供了一種簡單,輕量級的機制,服務器可以使用該機制告訴應用直接與服務器聯繫,以獲取更新的數據。
C2DM允許向Android應用發送輕量級消息。消息傳遞服務不適用於通過消息發送大量用戶內容。相反,它應該用於告訴應用程序服務器上有新的警報,以便應用程序可以獲取它。
C2DM限制:
- 消息大小限制爲1024個字節。
- 谷歌限制發送者合計發送的消息的數量,和一個發送方發送到一個特定的設備
- C2DM不進行關於遞送保證或消息
- C2DM需要用戶設置的次序的消息數他們的Google帳戶在他們的移動設備上。
- C2DM需要運行Android 2.2或更高版本的設備也有市場應用程序安裝
服務器應該是
- 能夠使用HTTPS與C2DM服務器進行通信。能夠與我們的客戶進行溝通。
- 能夠發起到C2DM服務器的HTTP請求。
- 能夠根據需要處理請求和隊列數據。例如,它應該能夠執行指數回退。
- 能夠存儲ClientLogin身份驗證令牌和客戶端註冊ID。 ClientLogin Auth令牌包含在發送消息的POST請求頭中。有關此主題的更多討論,請參閱ClientLogin for Installed Applications。服務器應該存儲令牌並有一個策略來定期刷新它。
預OS2的其他技術。2個設備:
- 投票,而不是推
- 短信
- 持續TCP/IP
- 第三方產品
投票,而不是推:Android應用程序可以定期輪詢來自後臺本地服務的新消息的服務器。您越頻繁地進行實時推送就越接近您。
- Adv:易於實施。
- Disadv:不是實時的。將殺死電池。
短信:Android應用可以在Android phone.So攔截短信,如果當有通知的服務器可以發送短信,android的應用程序可以接收短信,然後再檢查在服務器的新數據。
- Adv:容易實施。完全實時更新。 Disadv:可能要付出高昂的代價。
愛立信實驗室提供託管服務,允許發送多達2000個SMS。
持續TCP/IP:android應用程序啓動一個長期大部分閒置的TCP/IP連接與服務器,並通過偶爾發送保持消息來維護它。只要服務器上有新的東西,它就會通過TCP連接向手機發送消息。
- Adv:完全實時更新。
- Disadv:很難在手機和服務器端實現可靠的服務。已知Android操作系統能夠在內存不足時終止服務,因此我們的通知服務很容易消失。我們的手機進入睡眠狀態後會發生什麼?想象一下,如果所有的應用程序使用相同的技術。將會有大量的開路連接將會耗盡電池。
第三方產品
- 城市飛艇推:大缺點是,它要求用戶安裝的應用航空郵件到他們的設備。
- 執事項目
- xtify
- pushdroid.org
相關問題
- 1. 谷歌雲消息傳遞
- 2. 某些設備上的谷歌雲消息傳遞錯誤
- 3. C2DM - 雲到設備消息傳遞
- 4. 谷歌與CCS的雲消息傳遞
- 5. 谷歌雲PhoneGap與消息傳遞
- 6. 谷歌雲消息傳遞沒有工作數據連接
- 7. Android谷歌雲消息傳遞 - 推送到設備,但設備不顯示推送通知
- 8. Android Studio谷歌雲消息傳遞Android庫缺失
- 9. Firebase雲消息傳遞 - 一組設備
- 10. HOWTO? iOS設備到設備Google雲消息傳遞
- 11. 谷歌雲消息傳遞的Chrome channelId每個設備都是唯一的?
- 12. 谷歌雲消息沒有推送通知接收到我的設備
- 13. Android Cloud到設備消息傳遞
- 14. Android谷歌雲消息傳遞樣本不工作
- 15. 訪問Android雲到設備消息android?
- 16. 谷歌雲消息 -
- 17. 沒有谷歌的Android雲客戶端
- 18. 谷歌雲消息傳遞和更少的電池消耗
- 19. Android 4.1.2雲消息傳遞
- 20. 在Android的谷歌雲消息
- 21. 我的設備未收到Firebase雲消息傳遞通知
- 22. 谷歌雲消息傳遞的目的是什麼
- 23. android firebase設備到設備消息傳遞
- 24. 谷歌端點和谷歌雲消息
- 25. 谷歌雲的消息傳遞部署引擎
- 26. 谷歌雲消息傳遞的Chrome錯誤500
- 27. 谷歌雲消息示例
- 28. 谷歌雲消息令牌
- 29. 是Google雲消息傳遞強制使用的Gmail帳戶
- 30. 谷歌雲消息傳遞 - 使用「delay_while_idle」 - 應用服務器C#
是的,你是對的。肯定有一些第三方庫可以在沒有C2DM的情況下提供推送通知功能。儘管如此,它會增加電池的消耗。 –