diff options
| author | 2019-02-20 18:10:01 -0700 | |
|---|---|---|
| committer | 2019-02-20 18:10:03 -0700 | |
| commit | 62078979b33dd656d640ba139ea5ba76fbd57f1e (patch) | |
| tree | 0a28cb8f5ae480b1a3aace74d1ef51c196725872 | |
| parent | 3805e94129eacfb04c776bff4de308238d5d28fc (diff) | |
Broaden temporary workaround.
We have logic that automatically grants the legacy "Storage"
permission when the user grants either of the new "Music" or
"Photos & Videos" permissions, but that logic only lives in
PermissionController, and does not apply to pre-grants.
As a temporary workaround, explicitly grant the "Storage"
permission in pre-grants until we can refactor the
PermissionController logic.
Bug: 124766975, 124466734
Test: manual
Change-Id: I85cdf567af7683c0a3cfba755a9135ebad7a290f
| -rw-r--r-- | services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java index 636917921652..93a3d0af0272 100644 --- a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java +++ b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java @@ -206,6 +206,11 @@ public final class DefaultPermissionGrantPolicy { // STOPSHIP(b/112545973): remove once feature enabled by default if (StorageManager.hasIsolatedStorage()) { MEDIA_AURAL_PERMISSIONS.add(Manifest.permission.READ_MEDIA_AUDIO); + + // STOPSHIP(b/124466734): remove these manual grants once the legacy + // permission logic is unified with PermissionController + MEDIA_AURAL_PERMISSIONS.add(Manifest.permission.READ_EXTERNAL_STORAGE); + MEDIA_AURAL_PERMISSIONS.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); } } @@ -215,6 +220,11 @@ public final class DefaultPermissionGrantPolicy { if (StorageManager.hasIsolatedStorage()) { MEDIA_VISUAL_PERMISSIONS.add(Manifest.permission.READ_MEDIA_VIDEO); MEDIA_VISUAL_PERMISSIONS.add(Manifest.permission.READ_MEDIA_IMAGES); + + // STOPSHIP(b/124466734): remove these manual grants once the legacy + // permission logic is unified with PermissionController + MEDIA_VISUAL_PERMISSIONS.add(Manifest.permission.READ_EXTERNAL_STORAGE); + MEDIA_VISUAL_PERMISSIONS.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); } } @@ -642,16 +652,10 @@ public final class DefaultPermissionGrantPolicy { // Location if (locationPackageNames != null) { for (String packageName : locationPackageNames) { - // STOPSHIP: remove this force-granting of legacy storage - // permissions once b/124466734 is resolved - final Set<String> storageWorkaround = new ArraySet<>(); - storageWorkaround.add(Manifest.permission.READ_EXTERNAL_STORAGE); - storageWorkaround.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); - grantPermissionsToSystemPackage(packageName, userId, CONTACTS_PERMISSIONS, CALENDAR_PERMISSIONS, MICROPHONE_PERMISSIONS, PHONE_PERMISSIONS, SMS_PERMISSIONS, CAMERA_PERMISSIONS, - SENSORS_PERMISSIONS, STORAGE_PERMISSIONS, storageWorkaround); + SENSORS_PERMISSIONS, STORAGE_PERMISSIONS, MEDIA_AURAL_PERMISSIONS); grantSystemFixedPermissionsToSystemPackage(packageName, userId, LOCATION_PERMISSIONS, ACTIVITY_RECOGNITION_PERMISSIONS); } |