Android:如果应用程序被杀,BroadcastReceivers会停止吗?

时间:2011-03-26 07:58:16

标签: android broadcastreceiver alarmmanager

如果在AndroidManifest.xml中声明一个BroadcastReceiver,那么即使在我的应用程序尚未启动的设备启动时,接收器也能正常工作,但如果我强制我的应用程序停止设置,接收器似乎会崩溃太。
可能是Android 2.2中的“强制停止”也会在应用程序之后进行一些清理(包括BroadcastReceivers或AlarmManager中应用程序设置的警报,它应该广播我收到的意图)?
顺便说一句,我如何在Eclipse中看到设备中发送的所有广播?

2 个答案:

答案 0 :(得分:3)

心理,

强制停止不应该用于尝试从“非运行”状态测试您的应用程序。我会说这种行为充其量只是“未定义”。在应用程序上使用强制停止后,您必须手动重新启动它以获得其任何可用性(包括BroadcastReceiver)并不罕见。如果您的应用能够接收BroadcastReceiver个事件,包括BOOT_COMPLETE Broadcast,那么您实际上不需要进一步测试它。

我认为Force Stop的目的是完全阻止烦人的应用程序的功能。如果某个应用程序在后台运行时经常因为它接收了大量广播并重新启动,您是不是认为Force Stop会阻止该行为,直到用户手动重新启动该应用程序?

另外,我认为没有办法从Eclipse查看Broadcast事件。

答案 1 :(得分:0)

在eclipse中没有办法看到“广播发送”
另外如果您已在清单中注册了要接收事件的广播,那么系统将调用onReceived方法