國內要實現 Android Push Notification,不考慮 C2DM 的話,Urban Airship,IBM MQTT ,這幾種解決方案有人用過嗎,哪個更穩定?

C2DM由於國內定製機的原因就完全不用考慮了

APNS:http://www.push-notification.mobi/

另外,要是有用過的人,請教下,我們是Python後台,哪個對python更友好些,謝過~~

Update:

還有Amazon Simple Notification Service,這個有人用過嗎,有什麼可以參考的優缺點


我建議你還是用第三方的比較靠譜,千萬別自己做。推薦:http://docs.jpush.cn/pages/viewpage.action?pageId=557062

http://yuntuisong.hudee.com/

還有個推,具體那個比較好點,我還研究。


自己做推送這種非核心功能太坑了啊!沒有反覆驗證過的就容易出錯,用戶量小還好說,一旦做到幾十萬甚至幾百萬日活,自己做的系統就會容易丟包、延時、甚至宕機。真心不如用第三方了。

第三方也不是你想用就隨便用的,還是要自己測試過,官方說的到達率和實際到達率完全不是一回事啊。引用一下知友 @劉鐸 在另一條問答的回答

三月份時做的個推、百度、極光這三家的推送到達率的對比:

服務商 推送數 回執數 到達率 測試時間
個推 10w 29633 29.6% 3-13
百度 10w 33328 33.3% 3-13
極光 10w 44036 44.0% 3-13

最高也才44%的到達率。要知道極光的宣傳口號是 「到達率99.99%」...

以上三家算是國內第三方推送的主流了,之所以到達率這麼低,有一個共同點是都是單向推送。

單向推送什麼意思?推出去就算了,不管了。對方的網路環境不好,關機或者出了什麼問題,發送這頭是不知道的,到達率自然就不可控了。推送是個複雜的過程,裡面好多個環節都能出問題,所以到達率不穩定是很自然的。

推薦一下 雲巴 Yunba ,基於 MQTT 協議的雙向推送。什麼意思?消息發出去了,對方收到了,會有個回執發回來。這邊收不到回執,所發的消息就自動存在雲端,一旦檢測到客戶端上線了,就立刻重新發出消息,確保消息的到達。這樣能確保 100% 的到達率。因為有每條消息的監控系統,推送延時能做到毫秒級。

當然了 雲巴 Yunba 的功能除了 雙向推送,還有實時分析,許可權管理,設備上下線監控等,適合對推送性能要求比較高的用戶。


其實用過我的服務商無論網路穩定性還是服務支持的程度都欠佳,國內就有很好的推送服務上比如個推


個推推送,誰用誰知道。只要開發的時候集成SDK試一下孰優孰劣自有分明


可以試試Parse Push,正好我寫了一篇:

【Android】Parse Push快速入門指南


我們的產品 (http://yunba.io) 基於 MQTT 協議,非常適合移動網路環境的推送服務


有兩個基本的選擇:自己基於開源方案搭建,還是直接使用第三方推送服務。

xmpp / mqtt 的開源方案網上可以找到很多文章介紹。如果使用第三方推送服務會很不爽,可以考慮基於開源的方案來修改,只是要做好痛苦的準備。請參考:http://blog.jpush.cn/index.php/androidpn_android_push_problem/

歡迎使用極光推送 - 國內的一個第三方推送服務。


第三方推送服務商,你可以多對比幾家,國內的話,個推做的還是不錯的,http://www.igetui.com


bat三家的雲,百度的開放雲推出了物聯網服務,是mqtt的,可以試試。

國外的aws,azure,bluemix的iot都只支持mqtt。覺得mqtt是設備上雲的事實標準了。


最近也要做相關的應用,綜合考慮後選用了mqtt,具體效果如何拭目以待吧


推薦閱讀:

究竟什麼時候推送才是最佳的時候呢?
哪款即時通訊 (IM) 服務最穩定?
用WebSocket做WebApp應用內推送體驗如何?流量消耗是否可接受?
如何看待濫用「推送消息」?
人們為什麼厭惡新浪微博手機端推送,卻對QQ桌面彈窗沒那麼大的抱怨?

TAG:Android應用 | Android開發 | 推送Push | UrbanAirship | Android |