安卓开机广播接收不到,是啥原因啊?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓开机广播接收不到,是啥原因啊?相关的知识,希望对你有一定的参考价值。

低版本,高版本都不行啊
权限 加了 也注册了。 实在找不出问题源头,盼高手指点一二。
相关代码: <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<receiver android:name="com.example.mobileguarder.receiver.BootReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>

广播接收者:
public class BootReceiver extends BroadcastReceiver
@Override

public void onReceive(Context context, Intent intent)
System.out.println("广播启动了.....");


完全没反应啊。。。

参考技术A 设置receiver的android:exported="true" 否则接收不到系统广播 参考技术B 你没加权限啊,开机启动。另外3.0以上,必须手动打开app之后,才能收到开机启动的广播。 参考技术C 三日入厨下,洗手作羹汤。
未谙姑食性,先遣小姑尝。
参考技术D 问题解决没啊?

android接受不到开机广播

manifast里注册 和 但是在BootReceiver中接受不到广播 @Override public void onReceive(Context context, Intent intent) Log.i("TAG", "系统启动完毕"); 这是怎么回事,代码有问题么?

参考技术A intent
判断
intent.getAction()是否与
android.intent.action.BOOT_COMPLETED
相同,发出的是这个,你没监听这个Action

另外注意的是,如果是
3.1以下的系统,没问题。3.1以上的系统,需要有Activity存在,并且启动一次程序,才能够实现广播。
参考技术B android4.0以后就禁用了第三方APP的开机广播,只有系统应用才能收到开机广播。官网文档就这么说的。还有就是第三方APP必须要启动过一次才能接收到,如果你的app没有任何界面,只是在后台启动一个服务,google会认为是流氓软件,禁止启用开机广播。

以上是关于安卓开机广播接收不到,是啥原因啊?的主要内容,如果未能解决你的问题,请参考以下文章

android接受不到开机广播

安卓里的系统广播是啥?有啥作用?

安卓四大组件之二广播

安卓四大组件之二广播

android再发一次开机广播

android 开机自启动