From 78ec58d2096cdd34ae81d8911b257988767b6068 Mon Sep 17 00:00:00 2001 From: Joel Galenson Date: Wed, 24 Oct 2018 10:06:25 -0700 Subject: [PATCH] Add an intent to launch the app permission usage screen. Bug: 63532550 Test: Launched the new screen with this intent. Change-Id: I0b690b742ad4e89fcbd6e613675f5e08ed3dc644 --- api/system-current.txt | 1 + core/java/android/content/Intent.java | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/api/system-current.txt b/api/system-current.txt index c08606ee0cb27..a97fedc4392ba 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -987,6 +987,7 @@ package android.content { field public static final java.lang.String ACTION_PRE_BOOT_COMPLETED = "android.intent.action.PRE_BOOT_COMPLETED"; field public static final java.lang.String ACTION_QUERY_PACKAGE_RESTART = "android.intent.action.QUERY_PACKAGE_RESTART"; field public static final java.lang.String ACTION_RESOLVE_INSTANT_APP_PACKAGE = "android.intent.action.RESOLVE_INSTANT_APP_PACKAGE"; + field public static final java.lang.String ACTION_REVIEW_APP_PERMISSION_USAGE = "android.intent.action.REVIEW_APP_PERMISSION_USAGE"; field public static final java.lang.String ACTION_REVIEW_PERMISSIONS = "android.intent.action.REVIEW_PERMISSIONS"; field public static final java.lang.String ACTION_REVIEW_PERMISSION_USAGE = "android.intent.action.REVIEW_PERMISSION_USAGE"; field public static final java.lang.String ACTION_SHOW_SUSPENDED_APP_DETAILS = "android.intent.action.SHOW_SUSPENDED_APP_DETAILS"; diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java index ea1a2fe758af2..a7a6768ad6c95 100644 --- a/core/java/android/content/Intent.java +++ b/core/java/android/content/Intent.java @@ -23,6 +23,7 @@ import android.annotation.BroadcastBehavior; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.RequiresPermission; import android.annotation.SdkConstant; import android.annotation.SdkConstant.SdkConstantType; import android.annotation.SystemApi; @@ -1924,6 +1925,29 @@ public class Intent implements Parcelable, Cloneable { public static final String ACTION_REVIEW_PERMISSION_USAGE = "android.intent.action.REVIEW_PERMISSION_USAGE"; + /** + * Activity action: Launch UI to review uses of permissions for a single app. + *

+ * Input: {@link #EXTRA_PACKAGE_NAME} specifies the package whose + * permissions will be reviewed (mandatory). + *

+ *

+ * Output: Nothing. + *

+ *

+ * This requires {@link android.Manifest.permission#GRANT_RUNTIME_PERMISSIONS} permission. + *

+ * + * @see #EXTRA_PACKAGE_NAME + * + * @hide + */ + @SystemApi + @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) + @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION) + public static final String ACTION_REVIEW_APP_PERMISSION_USAGE = + "android.intent.action.REVIEW_APP_PERMISSION_USAGE"; + // --------------------------------------------------------------------- // --------------------------------------------------------------------- // Standard intent broadcast actions (see action variable).