Android4.4及以上无法接收开机广播

Android 4.4 and above can not receive boot broadcast

1、限制应用安装位置

android:installLocation="internalOnly"

2、添加开机广播权限

3、注册广播

            <action android:name="android.intent.action.BOOT_COMPLETED" />

            <category android:name="android.intent.category.HOME" />

4、接收广播打印日志并启动服务

public class MyBootBroadCastReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        //
        String action = intent.getAction();

        Log.e("TAG", isOrderedBroadcast() + "action:" + action);

        Intent service = new Intent(context, MyService.class);

        context.startService(service);
      }
}

以上为代码的实现 但是android4.4及以上phone之后开始播放,下面可以了。

试过5.1,可以接收BOOT_COMPLETED广播。 认为您需要删除此内容:android.intent.category.HOME.