Appops权限管理

Appops是Android系统内部的应用权限管理方案,主要针对系统应用。它提供了权限检查和设置接口,但未对第三方应用开放。用户可以通过设置中的隐藏入口进行权限管理,然而存在权限控制不生效和缺少统一提示的问题。Appops由AppOpsManager和AppOpsService组成,通过Binder通信。尽管存在不足,Appops的设计仍有借鉴价值。
摘要由CSDN通过智能技术生成

注:本文是根据Android 5.0的代码为基础

1. Appops简介

Appops是Application Operations的简称,是关于应用权限管理的一套方案,但这里的应用指的是系统应用,这些API不对第三方应用开放。Google从4.3开始推出Appops, 但一直到最新的Android N都没有在Settings里面开放Appops的入口,但这套方案却一直在后台默默的运行着。

2. 在 Settings中打开Appops

  1. 在. /packages/apps/Settings/res/xml/security_settings_misc.xml中配置
 <Preference android:key="manage_device_admin"
          android:title="@string/manage_device_admin"
          android:summary="@string/manage_device_admin_summary"
          android:persistent="false" />                                             

+ <Preference android:key="app_ops_summary"
+         android:title="@string/app_ops_settings"
+         android:summary="@string/app_ops_settings_summary"
+         android:persistent="false"/>
  1. 添加相应处理代码
    在./packages/apps/Settings/src/com/android/settings/SecuritySettings.java的onPreferenceTreeClick方法中添加相应的处理函数即可。此处就不贴具体代码了。

  2. 效果图
    这里写图片描述
    每个权限有三种状态。允许(Allowed),禁止(Ignored),总是询问(Always ask),见

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值