From 6f7c486ece2256e118cdd65d67c4c1e81f2eb22b Mon Sep 17 00:00:00 2001 From: "Philip P. Moltmann" Date: Thu, 6 Jun 2019 15:43:24 -0700 Subject: Expand location for everybody ... to fix up that some the apps that got downgraded from always to while-in-use. Fixes: 118661683 Test: Checked that location perms got expanded on Q->Q upgrade Change-Id: I5fdbd2d439e6002d463da2f73af00531fe3355c0 --- .../service/RuntimePermissionsUpgradeController.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/com/android/packageinstaller/permission/service/RuntimePermissionsUpgradeController.java b/src/com/android/packageinstaller/permission/service/RuntimePermissionsUpgradeController.java index cedb108e..65c348c1 100644 --- a/src/com/android/packageinstaller/permission/service/RuntimePermissionsUpgradeController.java +++ b/src/com/android/packageinstaller/permission/service/RuntimePermissionsUpgradeController.java @@ -79,6 +79,8 @@ class RuntimePermissionsUpgradeController { final int appCount = apps.size(); final boolean sdkUpgradedFromP; + boolean isFreshInstall = false; + if (currentVersion <= -1) { Log.i(LOG_TAG, "Upgrading from Android P"); @@ -90,6 +92,10 @@ class RuntimePermissionsUpgradeController { } if (currentVersion == 0) { + if (!sdkUpgradedFromP) { + isFreshInstall = true; + } + Log.i(LOG_TAG, "Grandfathering SMS and CallLog permissions"); final List smsPermissions = Utils.getPlatformPermissionNamesOfGroup( @@ -178,7 +184,7 @@ class RuntimePermissionsUpgradeController { } if (currentVersion == 6) { - if (sdkUpgradedFromP) { + if (!isFreshInstall || sdkUpgradedFromP) { Log.i(LOG_TAG, "Expanding location permissions"); for (int i = 0; i < appCount; i++) { @@ -200,7 +206,7 @@ class RuntimePermissionsUpgradeController { if (group.areRuntimePermissionsGranted() && bgGroup != null - && !bgGroup.isUserSet() && !bgGroup.isSystemFixed() + && !bgGroup.isSystemFixed() && !bgGroup.isPolicyFixed()) { bgGroup.grantRuntimePermissions(group.isUserFixed()); } -- cgit v1.2.3