Android 11下能否直接在清单文件声明WRITE_SETTINGS权限?
常规普通第三方应用无法绕过WRITE_SETTINGS权限的用户授权流程,也无法仅通过AndroidManifest.xml清单声明直接获取该权限。Android系统从6.0(API 23)版本开始就将该权限归类为特殊权限,官方明确要求必须跳转系统设置页由用户手动确认授权才可以生效,普通应用没有权限突破该安全限制。
针对你当前锁机专属设备的应用场景,可通过以下几种特殊路径获取权限:
- 若你的应用为设备预装特权应用,可将应用放到系统
/system/priv-app特权分区下,仅需在AndroidManifest.xml中添加<uses-permission android:name="android.permission.WRITE_SETTINGS" />声明,系统会自动为应用授予该权限,无需用户手动操作。 - 若你的应用已经配置为*设备所有者(Device Owner)*或设备政策控制器(DPC)应用,可直接调用DevicePolicyManager相关API调整屏幕亮度等系统配置,不需要额外申请
WRITE_SETTINGS权限。 - 若你的设备已经开启root权限,可直接通过root身份调用shell命令修改系统参数,或直接修改系统配置文件实现亮度等设置的调整,无需走系统权限授权流程。
若你不符合以上任意一种场景,没有其他可绕过该授权流程的方案。
内容的提问来源于stack exchange,提问作者Richard
相关产品推荐
相关产品推荐

