推送通知 安卓系統(tǒng)可以像蘋果那樣實時接收所有消息的推送嗎?應(yīng)該如何實現(xiàn)?
安卓系統(tǒng)可以像蘋果那樣實時接收所有消息的推送嗎?應(yīng)該如何實現(xiàn)?在IOS系統(tǒng)的早期版本中,使用了墓碑背景。這種后臺機制可以節(jié)省大量的系統(tǒng)資源,也保證了IOS的流暢性。但是,tombstone backg
安卓系統(tǒng)可以像蘋果那樣實時接收所有消息的推送嗎?應(yīng)該如何實現(xiàn)?
在IOS系統(tǒng)的早期版本中,使用了墓碑背景。這種后臺機制可以節(jié)省大量的系統(tǒng)資源,也保證了IOS的流暢性。但是,tombstone background決定應(yīng)用程序不能在后臺執(zhí)行任何刷新,因此消息和通知不能立即推送到用戶。因此,蘋果設(shè)計了一個蘋果推送服務(wù)通知服務(wù)(Apple push service Notification service),簡而言之,所有應(yīng)用程序都由一臺云服務(wù)器推送。
Android系統(tǒng)中是否有類似的推送機制?當然。而且安卓的云服務(wù)比IOS更強大
為什么沒有很多人使用它呢?因為安卓云服務(wù)器被長城防火墻屏蔽了。
99%的中國用戶從未使用過真正的安卓系統(tǒng)。完整的Android系統(tǒng)由開源AOSP和閉源GMS兩部分組成。中國的Android手機都是開源的,并且使用了一些自己的云服務(wù)。因此,國內(nèi)應(yīng)用程序不能使用Android的GCM(谷歌云消息)來接收推送。
只有在后臺不斷刷新才能完成消息推送,這也是國內(nèi)用戶感覺Android手機不如蘋果流暢的主要原因,也間接導致國內(nèi)很多應(yīng)用無法通過Google play store的審查。
如何設(shè)計一個百萬級的消息推送系統(tǒng)?
現(xiàn)在Android上最新版本的chrome支持推送API。這意味著您可以在沒有本機應(yīng)用程序的情況下提供真正的推送通知。
標準非常復雜,仍在不斷發(fā)展。如果您正在尋找插件解決方案,請查看pushpad(您可以在幾分鐘內(nèi)將其與rails應(yīng)用程序集成:在文檔中,您可以找到用Ruby編寫的代碼片段)。鏈接地址https://pushpad.xyz/