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;
     }
相关推荐
Digitally6 小时前
如何将视频从安卓设备传输到Mac?
android·macos
alexhilton8 小时前
Compose Unstyled:Compose UI中失传的设计系统层
android·kotlin·android jetpack
刘龙超9 小时前
如何应对 Android 面试官 -> 玩转 RxJava (基础使用)
android·rxjava
柿蒂10 小时前
从动态缩放自定义View,聊聊为什么不要把问题复杂化
android·ai编程·android jetpack
kerli11 小时前
kotlin协程系列:callbackFlow
android·kotlin
没有了遇见12 小时前
Android 原生定位实现(替代融合定位收费,获取经纬度方案)
android·kotlin
一枚小小程序员哈12 小时前
基于Android的车位预售预租APP/基于Android的车位租赁系统APP/基于Android的车位管理系统APP
android·spring boot·后端·struts·spring·java-ee·maven
诸神黄昏EX12 小时前
Android SystemServer 系列专题【篇四:SystemServerInitThreadPool线程池管理】
android
用户20187928316713 小时前
pm path 和 dumpsys package 的区别
android
是店小二呀13 小时前
【C++】智能指针底层原理:引用计数与资源管理机制
android·java·c++