summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSvet Ganov <svetoslavganov@google.com>2016-02-22 18:17:49 -0800
committerSvet Ganov <svetoslavganov@google.com>2016-02-22 18:17:52 -0800
commit44689865bafa920f33cbf7dde70379825ec9afde (patch)
treefb6e1c6186d1473afaca725ea911350d44167fbc /src
parent8c73974b359e24d797ab57a1c3db17f5474d1b63 (diff)
downloadandroid_packages_apps_PackageInstaller-44689865bafa920f33cbf7dde70379825ec9afde.tar.gz
android_packages_apps_PackageInstaller-44689865bafa920f33cbf7dde70379825ec9afde.tar.bz2
android_packages_apps_PackageInstaller-44689865bafa920f33cbf7dde70379825ec9afde.zip
Expose removed permissions flag as system API - installer
There are some permissions that were removed from the platform and guard nothing but legacy apps may be checking them before calling APIs. Hence, these apps should get the permissions as expected despite them being a no-op. To address this the platform declares removed permissions as normal permissions that are hidden such that legacy apps can always get them. These permissions are not shown in the UI. Play needs a way to filter out these permissions like the platform as they have permissions UI too. bug:23361760 Change-Id: Ieecf69f70551d987f5fac1f128b7f7a0c242c378
Diffstat (limited to 'src')
-rw-r--r--src/com/android/packageinstaller/permission/model/AppPermissionGroup.java2
-rw-r--r--src/com/android/packageinstaller/permission/model/PermissionApps.java3
-rw-r--r--src/com/android/packageinstaller/permission/model/PermissionGroups.java2
-rw-r--r--src/com/android/packageinstaller/permission/ui/handheld/AllAppPermissionsFragment.java2
-rw-r--r--src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java2
5 files changed, 5 insertions, 6 deletions
diff --git a/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java b/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java
index 27cbcd64..0771a0f4 100644
--- a/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java
+++ b/src/com/android/packageinstaller/permission/model/AppPermissionGroup.java
@@ -68,7 +68,7 @@ public final class AppPermissionGroup implements Comparable<AppPermissionGroup>
if (permissionInfo.protectionLevel != PermissionInfo.PROTECTION_DANGEROUS
|| (permissionInfo.flags & PermissionInfo.FLAG_INSTALLED) == 0
- || (permissionInfo.flags & PermissionInfo.FLAG_HIDDEN) != 0) {
+ || (permissionInfo.flags & PermissionInfo.FLAG_REMOVED) != 0) {
return null;
}
diff --git a/src/com/android/packageinstaller/permission/model/PermissionApps.java b/src/com/android/packageinstaller/permission/model/PermissionApps.java
index e9eaff5d..9ff5025c 100644
--- a/src/com/android/packageinstaller/permission/model/PermissionApps.java
+++ b/src/com/android/packageinstaller/permission/model/PermissionApps.java
@@ -35,7 +35,6 @@ import com.android.packageinstaller.R;
import com.android.packageinstaller.permission.utils.Utils;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -182,7 +181,7 @@ public class PermissionApps {
|| (requestedPermissionInfo.flags
& PermissionInfo.FLAG_INSTALLED) == 0
|| (requestedPermissionInfo.flags
- & PermissionInfo.FLAG_HIDDEN) != 0) {
+ & PermissionInfo.FLAG_REMOVED) != 0) {
continue;
}
diff --git a/src/com/android/packageinstaller/permission/model/PermissionGroups.java b/src/com/android/packageinstaller/permission/model/PermissionGroups.java
index c496e898..8ca69f24 100644
--- a/src/com/android/packageinstaller/permission/model/PermissionGroups.java
+++ b/src/com/android/packageinstaller/permission/model/PermissionGroups.java
@@ -131,7 +131,7 @@ public final class PermissionGroups implements LoaderCallbacks<List<PermissionGr
seenPermissions.add(groupPermission.name);
if (groupPermission.protectionLevel == PermissionInfo.PROTECTION_DANGEROUS
&& (groupPermission.flags & PermissionInfo.FLAG_INSTALLED) != 0
- && (groupPermission.flags & PermissionInfo.FLAG_HIDDEN) == 0) {
+ && (groupPermission.flags & PermissionInfo.FLAG_REMOVED) == 0) {
hasRuntimePermissions = true;
}
}
diff --git a/src/com/android/packageinstaller/permission/ui/handheld/AllAppPermissionsFragment.java b/src/com/android/packageinstaller/permission/ui/handheld/AllAppPermissionsFragment.java
index b3b0895c..0c249e55 100644
--- a/src/com/android/packageinstaller/permission/ui/handheld/AllAppPermissionsFragment.java
+++ b/src/com/android/packageinstaller/permission/ui/handheld/AllAppPermissionsFragment.java
@@ -123,7 +123,7 @@ public final class AllAppPermissionsFragment extends SettingsWithHeader {
}
if ((perm.flags & PermissionInfo.FLAG_INSTALLED) == 0
- || (perm.flags & PermissionInfo.FLAG_HIDDEN) != 0) {
+ || (perm.flags & PermissionInfo.FLAG_REMOVED) != 0) {
continue;
}
diff --git a/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java b/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java
index 2c0a123b..7ea9a258 100644
--- a/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java
+++ b/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java
@@ -153,7 +153,7 @@ public final class AllAppPermissionsFragment extends SettingsWithHeader {
}
if ((perm.flags & PermissionInfo.FLAG_INSTALLED) == 0
- || (perm.flags & PermissionInfo.FLAG_HIDDEN) != 0) {
+ || (perm.flags & PermissionInfo.FLAG_REMOVED) != 0) {
continue;
}