4

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

4

2 回答 2

3

精神病,

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

我相信 Force Stop 的预期目的是完全停止烦人的应用程序的功能。如果一个应用程序经常在后台运行,因为它接收到大量广播并重新启动,您是否认为强制停止应该阻止这种行为,直到用户手动重新启动应用程序?

另外,我不相信有一种方法可以Broadcast从 Eclipse 中查看事件。

于 2011-03-26T14:30:20.090 回答
0

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

于 2011-03-26T14:12:57.223 回答