summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/test-current.txt13
-rw-r--r--core/java/android/content/Context.java1
-rw-r--r--core/java/android/permission/PermissionManager.java6
3 files changed, 18 insertions, 2 deletions
diff --git a/api/test-current.txt b/api/test-current.txt
index 1a912a1c69b1..be92106e119e 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -646,6 +646,7 @@ package android.content {
method public void setContentCaptureOptions(@Nullable android.content.ContentCaptureOptions);
field public static final String BUGREPORT_SERVICE = "bugreport";
field public static final String CONTENT_CAPTURE_MANAGER_SERVICE = "content_capture";
+ field public static final String PERMISSION_SERVICE = "permission";
field public static final String ROLLBACK_SERVICE = "rollback";
field public static final String STATUS_BAR_SERVICE = "statusbar";
field public static final String TEST_NETWORK_SERVICE = "test_network";
@@ -2214,6 +2215,18 @@ package android.permission {
method public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
}
+ public final class PermissionManager {
+ method @IntRange(from=0) @RequiresPermission("android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY") public int getRuntimePermissionsVersion();
+ method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions();
+ method @RequiresPermission("android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY") public void setRuntimePermissionsVersion(@IntRange(from=0) int);
+ }
+
+ public static final class PermissionManager.SplitPermissionInfo {
+ method @NonNull public java.util.List<java.lang.String> getNewPermissions();
+ method @NonNull public String getSplitPermission();
+ method public int getTargetSdk();
+ }
+
public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
ctor public RuntimePermissionPresentationInfo(@NonNull CharSequence, boolean, boolean);
method public int describeContents();
diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java
index 941eda8bcf1f..529677aea653 100644
--- a/core/java/android/content/Context.java
+++ b/core/java/android/content/Context.java
@@ -4126,6 +4126,7 @@ public abstract class Context {
* @see #getSystemService(String)
* @hide
*/
+ @TestApi
@SystemApi
public static final String PERMISSION_SERVICE = "permission";
diff --git a/core/java/android/permission/PermissionManager.java b/core/java/android/permission/PermissionManager.java
index e15659db90a8..182a2ffa5221 100644
--- a/core/java/android/permission/PermissionManager.java
+++ b/core/java/android/permission/PermissionManager.java
@@ -39,6 +39,7 @@ import java.util.Objects;
*
* @hide
*/
+@TestApi
@SystemApi
@SystemService(Context.PERMISSION_SERVICE)
public final class PermissionManager {
@@ -140,12 +141,13 @@ public final class PermissionManager {
if (o == null || getClass() != o.getClass()) return false;
SplitPermissionInfo that = (SplitPermissionInfo) o;
return mTargetSdk == that.mTargetSdk
- && Objects.equals(mSplitPerm, that.mSplitPerm);
+ && mSplitPerm.equals(that.mSplitPerm)
+ && mNewPerms.equals(that.mNewPerms);
}
@Override
public int hashCode() {
- return Objects.hash(mSplitPerm, mTargetSdk);
+ return Objects.hash(mSplitPerm, mNewPerms, mTargetSdk);
}
/**