summaryrefslogtreecommitdiffstats
path: root/src/com/android/packageinstaller
diff options
context:
space:
mode:
authorSvetoslav <svetoslavganov@google.com>2015-09-01 18:29:10 -0700
committerSvetoslav <svetoslavganov@google.com>2015-09-01 18:29:11 -0700
commit3c44cc5448eed0b74b37f022e8695c36fb75f33c (patch)
tree7030d0ea8e4ed8b72ee4b55987cd201e45406dc3 /src/com/android/packageinstaller
parentf7fc063145df915b76c93945b2dd5e792d4cdd80 (diff)
downloadandroid_packages_apps_PackageInstaller-3c44cc5448eed0b74b37f022e8695c36fb75f33c.tar.gz
android_packages_apps_PackageInstaller-3c44cc5448eed0b74b37f022e8695c36fb75f33c.tar.bz2
android_packages_apps_PackageInstaller-3c44cc5448eed0b74b37f022e8695c36fb75f33c.zip
Display properly runtime permissions without a corresponding app op.
We added the GET_ACCOUNTS permission to the contacts group but it does not have an app op. The UI code was written with the assumption that all runtime permissions have an app op and was not showing the contacts group if the only requested permission from that group was GET_ACCOUNTS. bug:23726958 Change-Id: Iad5493297901c3f1144f4d58a3dad3f022c593a1
Diffstat (limited to 'src/com/android/packageinstaller')
-rw-r--r--src/com/android/packageinstaller/permission/model/AppPermissionGroup.java5
-rw-r--r--src/com/android/packageinstaller/permission/utils/Utils.java13
2 files changed, 3 insertions, 15 deletions
diff --git a/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java b/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java
index 9d65bcc0..e54b7029 100644
--- a/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java
+++ b/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java
@@ -275,8 +275,9 @@ public final class AppPermissionGroup implements Comparable<AppPermissionGroup>
if (permission.isGranted()) {
return true;
}
- } else if (permission.isGranted() && permission.getAppOp()
- != AppOpsManager.OP_NONE && permission.isAppOpAllowed()) {
+ } else if (permission.isGranted() && ((permission.getAppOp()
+ != AppOpsManager.OP_NONE && permission.isAppOpAllowed())
+ || permission.getAppOp() == AppOpsManager.OP_NONE)) {
return true;
}
}
diff --git a/src/com/android/packageinstaller/permission/utils/Utils.java b/src/com/android/packageinstaller/permission/utils/Utils.java
index 7b9a2b65..2940a729 100644
--- a/src/com/android/packageinstaller/permission/utils/Utils.java
+++ b/src/com/android/packageinstaller/permission/utils/Utils.java
@@ -84,13 +84,6 @@ public class Utils {
return false;
}
- // Yes this is possible. We have leftover permissions that
- // are not in the final groups and we want to get rid of,
- // therefore we do not have app ops for legacy support.
- if (!group.hasRuntimePermission() && !group.hasAppOpPermission()) {
- return false;
- }
-
final boolean isPlatformPermission = group.getDeclaringPackage().equals(OS_PKG);
// Show legacy permissions only if the user chose that.
if (isPlatformPermission
@@ -108,12 +101,6 @@ public class Utils {
return false;
}
- // Yes this is possible. We have leftover permissions that
- // are not in the final groups and we want to get rid of,
- // therefore we do not have app ops for legacy support.
- if (!app.hasRuntimePermissions() && !app.hasAppOpPermissions()) {
- return false;
- }
return true;
}