我在设备上安装了2个应用程序.其中一个应用程序捕获ACTION_BOOT_COMPLETED广播,进行一些初始化并发送另一个广播(比如MY_CUSTOM_BROADCAST).第二个应用程序有一个广播接收器(清单中的标签提到),它监听这个自定义广播.在启动时,第一个应用程序收到ACTION_BOOT_COMPLETED并成功发送自定义广播.但我的第二个应用程序的接收器似乎没有收到它.我尝试使用“am broadcast”发送自定义广播.即使这样,第二个应用程序的接收器也不会收到它.

然后我开始了第二个应用程序的主要活动,然后尝试使用“am broadcast”发送广播.然后第二个应用程序的接收器成功收到它.

有人可以帮助我,为什么我的接收器没有在启动时获得自定义广播?我在4.0.3(ICS)上运行它.

解决方法:

显然在Android 3.1中,如果应用程序从未运行过,或者已被强制停止,则应用程序处于停止状态.系统从广播意图中排除这些应用程序.可以使用Intent.FLAG_INCLUDE_STOPPED_PACKAGES标志包含它们.

另外,我认为你需要Intent.FLAG_ACTIVITY_NEW_TASK标志.

标签:android,android-intent

来源: https://codeday.me/bug/20190530/1184257.html

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐