summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip P. Moltmann <moltmann@google.com>2019-06-06 15:43:24 -0700
committerPhilip P. Moltmann <moltmann@google.com>2019-06-07 18:07:31 +0000
commit6f7c486ece2256e118cdd65d67c4c1e81f2eb22b (patch)
tree66375cf16e5c6b6d1c1af030e1caf004eba9162e
parentbe31f46d1341c613071fe1f7591b40c1e1aa1aaa (diff)
downloadandroid_packages_apps_PackageInstaller-6f7c486ece2256e118cdd65d67c4c1e81f2eb22b.tar.gz
android_packages_apps_PackageInstaller-6f7c486ece2256e118cdd65d67c4c1e81f2eb22b.tar.bz2
android_packages_apps_PackageInstaller-6f7c486ece2256e118cdd65d67c4c1e81f2eb22b.zip
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
-rw-r--r--src/com/android/packageinstaller/permission/service/RuntimePermissionsUpgradeController.java10
1 files 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<String> 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());
}