diff options
author | Philip P. Moltmann <moltmann@google.com> | 2019-02-11 16:29:19 -0800 |
---|---|---|
committer | Philip P. Moltmann <moltmann@google.com> | 2019-02-15 08:57:16 -0800 |
commit | 3e4961757b64622bded4cecb1605c57cb8c556c0 (patch) | |
tree | ada2b467aa31a81377caf9a3bc9dd52825ba2979 | |
parent | 4845667a817e10276ba2877f006278866abceaa4 (diff) |
Expose permission flag APIs for tests
tests need to make sure the flags are set correctly.
Bug: 116738135
Test: atest CtsBackupTestCases:android.backup.cts.PermissionTest#testRestorePermReviewed
Change-Id: Ia1000de3594e910c3345e205679bee37be898d17
-rw-r--r-- | api/test-current.txt | 7 | ||||
-rw-r--r-- | core/java/android/content/pm/PackageManager.java | 5 | ||||
-rw-r--r-- | test-mock/api/test-current.txt | 2 |
3 files changed, 14 insertions, 0 deletions
diff --git a/api/test-current.txt b/api/test-current.txt index 2cb01ead0788..f20d6366d7af 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -516,13 +516,20 @@ package android.content.pm { method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS_FULL") public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int); method @Nullable public abstract String[] getNamesForUids(int[]); method public abstract String getPermissionControllerPackageName(); + method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.REVOKE_RUNTIME_PERMISSIONS"}) public abstract int getPermissionFlags(String, String, @NonNull android.os.UserHandle); method @NonNull public abstract String getServicesSystemSharedLibraryPackageName(); method @NonNull public abstract String getSharedSystemSharedLibraryPackageName(); method public String getWellbeingPackageName(); method @RequiresPermission("android.permission.GRANT_RUNTIME_PERMISSIONS") public abstract void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.REVOKE_RUNTIME_PERMISSIONS"}) public abstract void updatePermissionFlags(String, String, int, int, @NonNull android.os.UserHandle); field public static final String FEATURE_ADOPTABLE_STORAGE = "android.software.adoptable_storage"; field public static final String FEATURE_FILE_BASED_ENCRYPTION = "android.software.file_based_encryption"; + field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40 + field public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8 + field public static final int FLAG_PERMISSION_REVOKE_WHEN_REQUESTED = 128; // 0x80 + field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2 + field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1 field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000 field public static final int MATCH_KNOWN_PACKAGES = 4202496; // 0x402000 field public static final String SYSTEM_SHARED_LIBRARY_SERVICES = "android.ext.services"; diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 9c3edceb2e8c..00419212544a 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -2943,6 +2943,7 @@ public abstract class PackageManager { * @hide */ @SystemApi + @TestApi public static final int FLAG_PERMISSION_USER_SET = 1 << 0; /** @@ -2953,6 +2954,7 @@ public abstract class PackageManager { * @hide */ @SystemApi + @TestApi public static final int FLAG_PERMISSION_USER_FIXED = 1 << 1; /** @@ -3006,6 +3008,7 @@ public abstract class PackageManager { * @hide */ @SystemApi + @TestApi public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 1 << 6; /** @@ -3797,6 +3800,7 @@ public abstract class PackageManager { * @hide */ @SystemApi + @TestApi @RequiresPermission(anyOf = { android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS @@ -3817,6 +3821,7 @@ public abstract class PackageManager { * @hide */ @SystemApi + @TestApi @RequiresPermission(anyOf = { android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS diff --git a/test-mock/api/test-current.txt b/test-mock/api/test-current.txt index ab10800ac534..0cb8f22d8070 100644 --- a/test-mock/api/test-current.txt +++ b/test-mock/api/test-current.txt @@ -9,10 +9,12 @@ package android.test.mock { method public java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int); method public String[] getNamesForUids(int[]); method public String getPermissionControllerPackageName(); + method public int getPermissionFlags(String, String, android.os.UserHandle); method @NonNull public String getServicesSystemSharedLibraryPackageName(); method @NonNull public String getSharedSystemSharedLibraryPackageName(); method public void grantRuntimePermission(String, String, android.os.UserHandle); method public void revokeRuntimePermission(String, String, android.os.UserHandle); + method public void updatePermissionFlags(String, String, int, int, android.os.UserHandle); } } |