问题原因:
从android 8.0(API26)开始,对清单文件AndroidManifest.xml中静态注册广播接收者作了限制(官方对耗电量的优化,避免APP滥用广播的一种处理方式)。
除了少部分的广播仍支持静态注册(如开机广播),其余的都会出现失效的情况。
//开机广播
<receiver
android:name=".RebootReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
解决方法:
采用动态注册(代码注册)