Android 5.1部分apk的升级或缓存功能无效
16lz
2021-01-23
google在external storage的权限限制导致的原因
要解决问题,需要给external storage 一个media rw权限就可以
diff --git a/base/services/core/java/com/android/server/SystemConfig.java b/base/services/core/java/com/android/server/SystemConfig.java
index cf2a49f..88dd54d 100644
--- a/base/services/core/java/com/android/server/SystemConfig.java
+++ b/base/services/core/java/com/android/server/SystemConfig.java
@@ -352,6 +352,17 @@ public class SystemConfig {
if (gidStr != null) {
int gid = Process.getGidForName(gidStr);
perm.gids = appendInt(perm.gids, gid);
+/* Tue, 09 Jun 2015 15:30:14 +0800
+ * add media_rw permission to external sdcard if BUILD_CTS=no
+ */
+ if (!FeatureOption.BUILD_CTS) {
+ if ("android.permission.WRITE_EXTERNAL_STORAGE".equals(name) && "sdcard_rw".equals(gidStr)
+ || "android.permission.ACCESS_ALL_EXTERNAL_STORAGE".equals(name) && "sdcard_all".equals(gidStr)) {
+ perm.gids = appendInt(perm.gids, Process.getGidForName("media_rw"));
+ Slog.d(TAG, "add permission -> " + name + ", to group -> media_rw");
+ }
+ }
+// End
} else {
Slog.w(TAG, "<group> without gid at "
+ parser.getPositionDescription());
要解决问题,需要给external storage 一个media rw权限就可以
diff --git a/base/services/core/java/com/android/server/SystemConfig.java b/base/services/core/java/com/android/server/SystemConfig.java
index cf2a49f..88dd54d 100644
--- a/base/services/core/java/com/android/server/SystemConfig.java
+++ b/base/services/core/java/com/android/server/SystemConfig.java
@@ -352,6 +352,17 @@ public class SystemConfig {
if (gidStr != null) {
int gid = Process.getGidForName(gidStr);
perm.gids = appendInt(perm.gids, gid);
+/* Tue, 09 Jun 2015 15:30:14 +0800
+ * add media_rw permission to external sdcard if BUILD_CTS=no
+ */
+ if (!FeatureOption.BUILD_CTS) {
+ if ("android.permission.WRITE_EXTERNAL_STORAGE".equals(name) && "sdcard_rw".equals(gidStr)
+ || "android.permission.ACCESS_ALL_EXTERNAL_STORAGE".equals(name) && "sdcard_all".equals(gidStr)) {
+ perm.gids = appendInt(perm.gids, Process.getGidForName("media_rw"));
+ Slog.d(TAG, "add permission -> " + name + ", to group -> media_rw");
+ }
+ }
+// End
} else {
Slog.w(TAG, "<group> without gid at "
+ parser.getPositionDescription());
更多相关文章
- Android获得系统(system)权限
- Android通知权限相关工具类
- Android 学习笔记(四):安卓开发权限速查
- Android 7.0 读写权限
- android权限
- android 中常用的权限
- Android 6预置APK的权限授予
- android添加超级管理权限
- Android 6.0 - 申请动态权限