Android 6.0 动态权限被禁止且不再提示之后的跳转(权限管理 或 应用管理) 以及 其它设置界面跳转拓展

一、动态权限被禁止且不再提示(以读写权限为例)

        这种情况一般弹出Dialog提示用户前往设置界面开启权限,一般手机我们会前往 权限管理界面,且不同的生产厂商的手机具体方法不同,我们要做判断来适配。但对于有些手机的存储权限,我们会发现权限管理界面找不到打开的开关,例如:华为M2平板,它的打开存储权限在 应用管理界面 中。所以即使同一厂商的手机,我们也要筛选特殊情况前往 应用管理界面

        1. HUAWEI  (华为)

            权限管理界面:

Intent intentHW = new Intent("自己应用的包名");
intentHW.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
ComponentName comp = new ComponentName("com.huawei.systemmanager",
        "com.huawei.permissionmanager.ui.MainActivity");
intentHW.setComponent(comp);
startActivity(intentHW);

            应用管理界面:

Intent intentHW = new Intent("自己应用的包名");
intentHW.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
ComponentName comp = new ComponentName("com.android.settings",
        "com.android.settings.Settings$ManageApplicationsActivity");
intentHW.setComponent(comp);
startActivity(intentHW);

            应用管理界面选择自己应用后的应用信息界面:(推荐使用)

Intent intentHW = new Intent("自己应用的包名");
intentHW.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
ComponentName comp = new ComponentName("com.android.settings",
        "com.android.settings.applications.InstalledAppDetailsTop");
intentHW.setData(Uri.parse("package:" + "自己应用的包名"));
intentHW.setComponent(comp);
startActivity(intentHW);

            应用管理界面选择自己应用后的应用信息界面再选择权限后的界面:(应该不能跳)

        2. MEIZU  (魅族)

            权限管理界面:

Intent intentMZ = new Intent("com.meizu.safe.security.SHOW_APPSEC");
intentMZ.addCategory(Intent.CATEGORY_DEFAULT);
intentMZ.putExtra("packageName", BuildConfig.APPLICATION_ID);
startActivity(intentMZ);

二、手机设置界面的Activity怎么看

        上面的跳转很多都是设置ComponentName,查看对应设置界面的Activity方法,将手机打开到那个设置界面,连接adb,利用 adb shell dumpsys activity activities 命令便可查看该界面全路劲,该命令不仅适用设置界面,也适用自己的app。

三、跳转设置界面的拓展

        android.provider.Settings 类中定义了很多设置界面的action,利用此action便可跳到对应页面,在该类中查找 @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION) 可以查到有90个这样的action,具体使用(示例为悬浮于其它应用之上的权限开关)

Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
        Uri.parse("package:" + "自己应用的包名"));
startActivityForResult(intent, 191115);

        这些定义的90个action中并没有 应用管理界面选择自己应用中的权限后的界面 action,甚至没有很多我们想要到达的界面,有些界面可能并不给第三方app开放,有些界面也许没有找见正确的方法。

            

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值