Android 开机广播的接受问题

博客指出Android 8.0之后无法在清单中注册用于隐式广播的广播接收器,但开机广播被豁免。同时分析了开机广播无法接收的原因,如未添加对应action和权限、应用装在sd卡、系统开启Fast Boot模式、应用安装后未启动过等,还给出了参考资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

** 8.0 之后无法再在其清单中注册用于隐式广播的广播接收器**
但是开机广播是被豁免的
https://developer.android.google.cn/guide/components/broadcast-exceptions
开机广播无法原因:
1. BOOT_COMPLETED对应的action和uses-permission没有一起添加
2. 应用安装到了sd卡内,安装在sd卡内的应用是收不到BOOT_COMPLETED广播的
3. 系统开启了Fast Boot模式,这种模式下系统启动并不会发送BOOT_COMPLETED广播
4. 应用程序安装后重来没有启动过,这种情况下应用程序接收不到任何广播,包括BOOT_COMPLETED、ACTION_PACKAGE_ADDED、CONNECTIVITY_ACTION等等。
系统广播不受是否启动过限制

参考资料:
https://developer.android.google.cn/guide/components/broadcast-exceptions
https://segmentfault.com/a/1190000015851405
https://skytoby.github.io/2019/%E5%BC%80%E6%9C%BA%E5%B9%BF%E6%92%ADBOOT_COMPLETED%E5%8F%91%E9%80%81%E6%B5%81%E7%A8%8B%E5%88%86%E6%9E%90/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值