summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip P. Moltmann <moltmann@google.com>2019-06-10 16:31:53 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2019-06-10 16:31:53 +0000
commit1c1d5864376eca28fa76e565193f744d64847c2b (patch)
tree52c6c06d63b998b2ee997e04efa4238892ae6534
parent095ad821e401dc1e352c1bcf2917f81b81301275 (diff)
parent6f7c486ece2256e118cdd65d67c4c1e81f2eb22b (diff)
downloadandroid_packages_apps_PackageInstaller-1c1d5864376eca28fa76e565193f744d64847c2b.tar.gz
android_packages_apps_PackageInstaller-1c1d5864376eca28fa76e565193f744d64847c2b.tar.bz2
android_packages_apps_PackageInstaller-1c1d5864376eca28fa76e565193f744d64847c2b.zip
Merge "Expand location for everybody" into qt-dev
-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());
}