diff options
Diffstat (limited to 'src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java')
-rw-r--r-- | src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java b/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java index 57342c25..a2b70058 100644 --- a/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java +++ b/src/com/android/packageinstaller/permission/ui/television/AllAppPermissionsFragment.java @@ -156,12 +156,24 @@ public final class AllAppPermissionsFragment extends SettingsWithHeader { || (perm.flags & PermissionInfo.FLAG_REMOVED) != 0) { continue; } + if (appInfo.isInstantApp() + && (perm.protectionLevel & PermissionInfo.PROTECTION_FLAG_EPHEMERAL) == 0) { + continue; + } + if (appInfo.targetSdkVersion < Build.VERSION_CODES.M + && (perm.protectionLevel & PermissionInfo.PROTECTION_FLAG_RUNTIME_ONLY) + != 0) { + continue; + } + PermissionGroupInfo group = getGroup(perm.group, pm); - if (perm.protectionLevel == PermissionInfo.PROTECTION_DANGEROUS) { + if ((perm.protectionLevel & PermissionInfo.PROTECTION_MASK_BASE) + == PermissionInfo.PROTECTION_DANGEROUS) { PreferenceGroup pref = findOrCreate(group != null ? group : perm, pm, prefs); pref.addPreference(getPreference(perm, group)); - } else if (perm.protectionLevel == PermissionInfo.PROTECTION_NORMAL) { + } else if ((perm.protectionLevel & PermissionInfo.PROTECTION_MASK_BASE) + == PermissionInfo.PROTECTION_NORMAL) { PreferenceGroup otherGroup = getOtherGroup(); if (prefs.indexOf(otherGroup) < 0) { prefs.add(otherGroup); @@ -303,4 +315,4 @@ public final class AllAppPermissionsFragment extends SettingsWithHeader { } return false; } -}
\ No newline at end of file +} |