该博客内容涉及Android11系统的PackageManagerService和PermissionManagerService的源码修改,主要是为了在rk3568设备上安装apk时,默认授予所有运行时权限。通过修改installFlags,确保grantPermissions始终为true,从而实现自动授予权限的功能。
摘要由CSDN通过智能技术生成
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index d35f0b28d299..8d198b5f143c 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -1764,8 +1764,9 @@ public class PackageManagerService extends IPackageManager.Stub
InstallArgs args = data.args;
PackageInstalledInfo parentRes = data.res;
- final boolean grantPermissions = (args.installFlags
- & PackageManager.INSTALL_GRANT_RUNTIME_PERMISSIONS) != 0;
+ //final boolean grantPermissions = (args.installFlags
+ // & PackageManager.INSTALL_GRANT_RUNTIM
Intent intent = new Intent(Settings.ACTION_MANAGE_
APP
_ALL_FILES_ACCESS_PERMISSION);
intent.setData(Uri.parse("package:" + getPackageName()));
startActivityForResult(intent, Request_Code);
安卓
11
改变了此前安卓系统对于文件管理的规则,在安卓
11
上,文件读写变成了特殊权
限
。应用默认只能读写自己的目录
Android
11
系统对应用写入权
限
做了严格的
限
制。本文介绍如何获取文件读写权
限
。项目中 build.gradle 的targetSdkVersion >= 29 ,会出现读写问题为了能直接usb安装,gradle.properties 需要设置(否则,在安装时会报异常:-15)
Android
Manifest添加权
限
设置
申请权
限
,主要用到如下4个函数
申请权
限
是否应该显示请
本专栏《
RK3568
Android
11
从开发入门到能独立开发教程》以AIO-3568J开发板来讲解入门教程,学习嵌入式开发开发板是不可缺少的工具;想学习的朋友,也可以购买一块开发板来学习;开发板的选择的话,可以根据自己的情况来选择,也可以不选择AIO-3568J的开发板,其他
RK3568
开发板只要开放资料也可以的,比如板子原理图,位号图和SDK开源等开源资料;
本专栏以学习为目的,本专栏提供的所有资料,请勿用于商业用途;感谢大家的支持;
一、AIO-3568J开...
rk3568
是Rockchip推出的一款高性能嵌入式处理器,它集成了四核Arm Cortex-A55 CPU和Mali-G52 GPU,支持
Android
11
操作系统。在本文中,我们将探讨
rk3568
在
Android
11
中的默认USB权
限
设置。
在
Android
11
中,Google引入了一些新的USB权
限
控制机制,以增强设备的安全性和隐私保护。在默认情况下,USB接口权
限
被
限
制为“仅充电”,这意味着除了充电之外,其他任何USB功能都会被禁用,如数据传输、文件传输等。用户需要手动允许设备访问USB接口的其他功能,这可以通过在设备上设置USB权
限
来实现。
在
rk3568
设备中,可以通过在开发者选项中启用“默认USB许可”选项来设置默认USB权
限
。用户可以选择将默认权
限
设置为“仅充电”、“MIDI”、“文件传输”或者“MTP(媒体传输协议)”中的任意一种。如果用户选择了“MIDI”或“文件传输”权
限
,每次插上USB线时都会出现一个对话框,询问用户是否允许此设备对设备进行访问。如果用户不允许此访问请求,那么该设备将无法访问USB接口的其他功能,只能进行充电。
总之,
rk3568
在
Android
11
中的默认USB权
限
设置是非常灵活的。用户可以根据自己的需求选择合适的USB权
限
设置并进行自定义。这种权
限
控制机制可以确保设备的安全性和隐私保护,同时也可以更好地保护用户的数据。
CSDN-Ada助手:
android linux it6807调试心得
CSDN-Ada助手:
Android平板作为hid设备
DownloadTookit: