android 安装第三方apk自动赋予运行时权限

摘要:行业机使用场景点击运行时权限很麻烦,而随着android的演进,对于权限的管控越发严格。故本文通过对系统的修改实现第三方app在运行时直接获取全部权限。

通过属性ro.perms.force_grant控制功能开关。

java 复制代码
Index: frameworks/base/services/core/java/com/android/server/pm/permission/Permission.java
===================================================================
--- frameworks/base/services/core/java/com/android/server/pm/permission/Permission.java	(版本 4724)
+++ frameworks/base/services/core/java/com/android/server/pm/permission/Permission.java	(版本 4725)
@@ -25,6 +25,7 @@
 import android.content.pm.PermissionInfo;
 import com.android.server.pm.pkg.component.ParsedPermission;
 import android.os.Build;
+import android.os.SystemProperties;
 import android.os.UserHandle;
 import android.util.Log;
 import android.util.Slog;
@@ -206,10 +207,16 @@
     }
 
     public boolean isNormal() {
+        if (SystemProperties.getBoolean("ro.perms.force_grant", false)) { // @ +
+            return true;
+        }
         return (mPermissionInfo.protectionLevel & PermissionInfo.PROTECTION_MASK_BASE)
                 == PermissionInfo.PROTECTION_NORMAL;
     }
     public boolean isRuntime() {
+        if (SystemProperties.getBoolean("ro.perms.force_grant", false)) { // @ +
+            return false;
+        }
         return (mPermissionInfo.protectionLevel & PermissionInfo.PROTECTION_MASK_BASE)
                 == PermissionInfo.PROTECTION_DANGEROUS;
     }
相关推荐
敲代码的瓦龙1 天前
Android?Activity!!!
android
重生之我在安卓搞音频1 天前
二、Android 音频框架
android·音视频
studyForMokey1 天前
【Android面试】Java专题 todo
android·java·面试
代码改善世界1 天前
【MATLAB初阶】矩阵操作(二):矩阵的运算
android·matlab·矩阵
九皇叔叔1 天前
MySQL实操指南:复制表及数据复制全解析
android·数据库·mysql
梦想不只是梦与想1 天前
flutter 与 Android iOS 通信?以及实现原理(一)
android·flutter·ios·methodchannel·eventchannel·basicmessage
Lambert_lin01 天前
Android grade9.0 之后 自定义apk 名称
android·kotlin
fengci.1 天前
ctfshow其他(web408-web432)
android·开发语言·前端·学习·php
Kapaseker1 天前
“点击显示全文” — Compose 实现
android·kotlin
lxysbly1 天前
安卓土星ss模拟器下载(支持中文、金手指)
android