10

我已经知道谷歌拒绝了这个转储权限,除了 4.1 和更高版本的系统应用程序。

但我仍然可以使用以下命令为可调试应用程序授予此转储权限。,

命令 :

adb shell pm grant "com.packageName" android.permission.DUMP

但是我不能对从 Play 商店下载的应用程序做同样的事情,

命令 :

adb shell pm grant "com.playStoreApp" android.permission.DUMP

错误 :

不允许操作:java.lang.SecurityException:包 com.playStoreApp 未请求权限 android.permission.DUMP

是否有任何破解或解决方法来授予 Play 商店应用程序的权限?

提前致谢。

4

1 回答 1

4

没有解决方法。android.permission.Dump 受系统、签名和开发权限保护级别保护。源代码的第 1993 行向您展示了这一点。如果您的 APK 使用框架证书签名,位于 priv-app 目录中,或者可调试(见下文),您可以使用 pm 服务授予权限,否则代码会特别阻止您要求的内容(第 2624 行来源)。

可调试 APK 可以通过 build.gradle 设置 buildType 的 debuggable 属性来创建。示例 Android DSL:

android {
    ...
    buildTypes {
        debug {
            debuggable true
            ...
        }
        quality_assurance {
            debuggable true
        }
    ...
}
于 2015-09-16T22:40:19.103 回答