Android 13下ADB授予权限失败求助:无GRANT_RUNTIME_PERMISSIONS权限
解决Android 13下ADB授予WRITE_SECURE_SETTINGS权限失败的问题
核心原因
Android 13收紧了ADB shell的权限管控,默认shell用户(UID 2000)不再具备授予系统特殊权限的权限,必须切换到高权限环境执行授权操作。
可行解决方案
方案1:Root环境下执行
若设备已获取Root权限,直接用root身份执行授权命令:./adb shell su -c "pm grant com.arlosoft.macrodroid android.permission.WRITE_SECURE_SETTINGS"执行时在设备上确认Root授权请求即可。
方案2:指定主用户执行(无需Root)
针对系统级特殊权限,可通过--user 0参数指定主用户(系统默认主用户ID为0)发起授权,这是官方支持的合法方式:./adb shell pm grant --user 0 com.arlosoft.macrodroid android.permission.WRITE_SECURE_SETTINGS方案3:通过应用内权限入口授权
打开MacroDroid应用,进入设置-权限管理,找到对应"修改系统设置"的权限选项,按照应用引导完成授权。部分适配Android 13的应用会提供可视化的特殊权限申请入口。
验证权限状态
执行以下命令确认权限是否成功授予:
./adb shell pm dump com.arlosoft.macrodroid | grep "WRITE_SECURE_SETTINGS"
输出中出现granted=true即表示权限生效。
内容的提问来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

