Android原始碼 第三方應用普通安裝 app許可權預設開啟
阿新 • • 發佈:2018-12-15
預裝應用app的許可權預設開啟,修改DefaultPermissionGrantPolicy.java。手動安裝的第三方app的許可權預設開啟是修改PackageManagerService.java。在grantPermissionsLpw函式中新增如下程式碼
if(pkg.packageName.contains("com.tencent.mm") || pkg.packageName.contains("com.scrm")||pkg.packageName.contains("com.assistant.modules")) { final int permsSize = pkg.requestedPermissions.size(); for (int i=0; i<permsSize; i++) { final String name = pkg.requestedPermissions.get(i); Slog.d(TAG, "permsSize="+name); final BasePermission bp = mSettings.mPermissions.get(name); if(null != bp && permissionsState.grantInstallPermission(bp) != PermissionsState.PERMISSION_OPERATION_FAILURE) { Slog.d(TAG, "--- grant permission " + name + " to package " + pkg.packageName); changedInstallPermission = true; } } }