我为Android实现了GCM推送通知,并且注意到从我的Samsung Galaxy S3任务管理器关闭该应用程序后,不再收到推送通知。奇怪的是,如果我通过滑动应用程序来关闭它,那么它在任务管理器中也不再可见,但是使用后一种方法,我仍然会收到推送通知。

另外,如果我重新启动电话,我仍然会收到它。但是,如果我关闭应用程序并重新启动手机,则不会收到推送。

从任务管理器而非通过刷卡关闭应用程序时,Android是否会关闭更多资源?但是仍然很奇怪,因为当我重新启动手机时,我认为该应用程序仍然完全关闭。难道是Android系统重启后就知道它没有从任务管理器中关闭吗?

我对此问题进行了一些搜索,从我发现的结果看来,从任务管理器中关闭它仍然应该使您能够接收推送通知。仅当强制关闭应用程序时,才会收到通知。

有什么想法和解决方法吗?

最佳答案

从任务管理器而非通过刷卡关闭应用程序时,Android是否会关闭更多资源?


我的猜测是,无论三星设备上的此“任务管理器”是什么,都相当于“设置”中应用程序列表中应用程序页面上的“强制停止”。 “强制停止”基本上会使您的应用偏离轨道,进入“停止”状态。在用户从主屏幕启动您的活动(或者可以想象,其他手动操作您的组件之一)之前,不会再次调用您的应用程序在清单中注册的BroadcastReceivers(包括用于GCM的应用程序)。


  似乎从任务管理器关闭它仍应使您能够接收推送通知


Android中没有“任务管理器”。第三方任务管理器应用程序不能执行等效的“强制停止”。但是,没有什么可以阻止像Samsung这样的设备制造商实施确实相当于“ Force Stop”的任务管理器的。恕我直言,这对他们来说是一个不好的举动,但他们通常不会在做出工程决策之前就此征求我的意见... :-)

关于android - 从任务管理器中删除时,Android GCM未收到消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17194914/

10-11 17:19