我有一个在AndroidManifest
中注册的接收器,但似乎当应用程序被杀死时它不能接收意图,我是否对Android进程生命周期有一些误解?
感谢任何帮助。
我有一个在AndroidManifest
中注册的接收器,但似乎当应用程序被杀死时它不能接收意图,我是否对Android进程生命周期有一些误解?
感谢任何帮助。
如果用户进入设置并强制停止您的应用程序,在Android 3.1及更高版本中,您的BroadcastReceivers
将不再起作用。您将返回到安装您的应用程序时处于的状态 -- 必须手动运行一个组件(例如,用户从主屏幕启动活动)才能使您的BroadcastReceivers
再次工作。
onReceive()
返回,该进程将有资格终止,但通常不会立即终止。 “它不会停止未来的调用,因为每个调用都在不同的进程中运行”--强制停止是一个应用程序的事情,而不仅仅是一个进程的事情。一旦强制停止应用程序,除非有东西显式地启动组件(例如,用户运行活动),否则该应用程序将永远不会再次运行。几个世纪可能过去了,该应用程序仍将被阻止运行。 - CommonsWare