强制停止会使app的接收器不被调用?

时间:2013-06-22 12:28:03

标签: android broadcastreceiver forceclose

我有一个用XML声明的服务响应PACKAGE_ADDED广播意图。 它工作正常,但我发现如果我强制停止应用程序,接收器将不再收到任何东西。它没有被召唤。

这是正常的吗?我能做什么?

我需要确保它始终响应。

3 个答案:

答案 0 :(得分:2)

从Android 3.1版本开始,一个应用程序无法接收广播意图,直到它手动凝视一次。 在第一次启动之前,应用程序被启动器视为“已停止”。 ({启动对已停止的应用程序的控制“下的http://developer.android.com/about/versions/android-3.1.html)。

如果手动强制停止应用程序,将再次设置此标志,您需要手动重新启动它以允许它再次接收事件。

答案 1 :(得分:1)

尝试添加FLAG_INCLUDE_STOPPED_PACKAGES

this FLAG  在你的意图中。

答案 2 :(得分:0)

如果您的接收器是由您的服务动态注册的,当他被杀时,接收器也是。 但是如果你用XML声明你的接收器,这应该有效。 (和通常的启动接收器一样)

相关问题