com.android.server.am.ExtraActivityManagerService: MIUILOG- Permission Denied Activity

在这里插入图片描述

这里总结一篇关于开机自启被拦截的问题,之前写了两篇关于开机自启的文章,大家可以去参考一下。

Android App开机自启动
Android 开机启动延迟问题

AutoStartBroadReceiver具体代码:

public class AutoStartBroadReceiver extends BroadcastReceiver {
    private static final String ACTION = "android.intent.action.BOOT_COMPLETED";

    @Override
    public void onReceive(Context context, Intent intent) {
        Log.e("接收广播", "onReceive: ");
        Log.e("接收广播", "onReceive: " + intent.getAction());
        //开机启动
        if (ACTION.equals(intent.getAction())) {
            Log.e("接收广播", "onReceive: 启动了。。。");

            Intent mainIntent = new Intent(context, UserLoginActivity.class);
            Log.e("接收广播", "onReceive: 启动了1111111");
            /**
             * Intent.FLAG_ACTIVITY_NEW_TASK
             * Intent.FLAG_ACTIVITY_CLEAR_TOP
             */
            mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(mainIntent);
            Log.e("接收广播", "onReceive: 启动了2222222");
//            context.startService(mainIntent);
        }
    }

}

在这里插入图片描述

1.原因剖析

D/com.android.server.am.ExtraActivityManagerService: MIUILOG- Permission Denied Activity : 
Intent { flg=0x10000000 cmp=com.xxxx.xxxxx/.mvp.view.Activity.UserLoginActivity } 
pkg : com.xxxx.xxxxx uid : 10151 tuid : 10039

       在看图上拦截信息log日志前,已经授权了开机自启,当接收到广播后,在准备跳转到UserLoginActivity的时候,被拦截了。我这边应用的是小米 MIUI手机,版本是红米手机 Redmi 6A MIUI 10,MIUI 10不允许服务启动,此问题的原因是app没有后台弹出界面的权限,系统给拦截了
       目前在app端没有方案可以解决此问题,因为从系统端拦截掉了。

2.解决方法

这里以测试机 ==》红米手机举例:手动开启后台弹出权限


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拉莫帅

你的鼓励将是我的创作动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值