最近使用了极光推送,集成了里面的模块后。在app打开的情况下,接受推送消息正常,当kill掉app以后,就接受不到相关的推送信息了,并且打开app之后,也接受不到在关闭状态下发的推送消息,请问有什么好的解决方案???
PHPz2017-04-17 17:11:16
App進程被Kill之後, 讓App再自行啟動. 類似App: 正點鬧鐘(進程被強殺後, 又自行啟動了)
---- 更新於2016-12-14 -----
除了App被強殺, Android M 之後又有一個新的特性會影響第三方推送, 那就是Doze模式.
正在使用7.+系統, 微信的訊息推送經常被幹死, 經常要在喚醒屏幕那下才能收到訊息. 出現這種情況應該就是Android M的Doze模式造成的.
知乎: Android M 的 Doze 模式下第三方推送服務還能用嗎?
阿神2017-04-17 17:11:16
這個是實現不了的,除非使用谷歌的gcm,類似於蘋果的apns推送,但在天朝估計會撞牆。所以殺死進程了,就接收不到了。但是那個關閉狀態的推送再開啟app的情況下是可以收到的。
PHP中文网2017-04-17 17:11:16
在Android5.0之前有各種方式可以提高service 的存活率,但在Android5.0後推送的到達率非常低,後台進程的權限交給了用戶,需要手動設定對應用程式的信任,這樣在APP 被kill 掉後service 可繼續存活。大概看過 QQ 之類大廠的應用,是安裝後自動被信任的,應該是與硬體廠商有協議,硬體廠商有白名單什麼的,猜的。
關於再次打開APP 接收不到之前推送的消息,不太了解極光,大概想法是,推送的消息有到達的統計,使用監控未到達的設備,當設備啟動APP 時會有對極光的驗證之類的,相當於該設備在線,此時再次發送未到達的通知。