summaryrefslogtreecommitdiff
path: root/framework-s/java
diff options
context:
space:
mode:
author Jay Thomas Sullivan <jaysullivan@google.com> 2024-01-22 17:09:45 -0800
committer Jay Thomas Sullivan <jaysullivan@google.com> 2024-01-24 10:18:31 -0800
commitd9d56047f3dc04c70e543f40ffa82581049a43de (patch)
treece9f601997235b8cfa676778e2ca29474e708196 /framework-s/java
parentb354559c5103d24c4669617e603d020581c9e1d9 (diff)
[ECM] Add RequiresPermission annotations
We've recently created a new permission: MANAGE_ENHANCED_CONFIRMATION_STATES The EnhancedConfirmationManager API should be gated by this permission. So, add the RequiresPermission annotations. Bug: 320512579 Test: presubmit Change-Id: Ia04678c8049e46bdd27ae24dd23e7c842e240c63
Diffstat (limited to 'framework-s/java')
-rw-r--r--framework-s/java/android/app/ecm/EnhancedConfirmationManager.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/framework-s/java/android/app/ecm/EnhancedConfirmationManager.java b/framework-s/java/android/app/ecm/EnhancedConfirmationManager.java
index 4f1edb092..c8ef3fe0c 100644
--- a/framework-s/java/android/app/ecm/EnhancedConfirmationManager.java
+++ b/framework-s/java/android/app/ecm/EnhancedConfirmationManager.java
@@ -18,6 +18,7 @@ package android.app.ecm;
import android.annotation.FlaggedApi;
import android.annotation.IntDef;
+import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.annotation.SystemService;
import android.annotation.TargetApi;
@@ -245,6 +246,7 @@ public final class EnhancedConfirmationManager {
* @return {@code true} if the setting is restricted from the app
* @throws NameNotFoundException if the provided package was not found
*/
+ @RequiresPermission(android.Manifest.permission.MANAGE_ENHANCED_CONFIRMATION_STATES)
public boolean isRestricted(@NonNull String packageName, @NonNull String settingIdentifier)
throws NameNotFoundException {
return isSettingEcmProtected(settingIdentifier) && isPackageEcmGuarded(packageName);
@@ -260,6 +262,7 @@ public final class EnhancedConfirmationManager {
* @param packageName package name of the application to remove protection from
* @throws NameNotFoundException if the provided package was not found
*/
+ @RequiresPermission(android.Manifest.permission.MANAGE_ENHANCED_CONFIRMATION_STATES)
public void clearRestriction(@NonNull String packageName) throws NameNotFoundException {
if (!isClearRestrictionAllowed(packageName)) {
throw new IllegalStateException("Clear restriction attempted but not allowed");
@@ -279,6 +282,7 @@ public final class EnhancedConfirmationManager {
* restrictions from the provided app
* @throws NameNotFoundException if the provided package was not found
*/
+ @RequiresPermission(android.Manifest.permission.MANAGE_ENHANCED_CONFIRMATION_STATES)
public boolean isClearRestrictionAllowed(@NonNull String packageName)
throws NameNotFoundException {
int state = getAppEcmState(packageName);
@@ -296,6 +300,7 @@ public final class EnhancedConfirmationManager {
*
* @hide
*/
+ @RequiresPermission(android.Manifest.permission.MANAGE_ENHANCED_CONFIRMATION_STATES)
public void setClearRestrictionAllowed(@NonNull String packageName)
throws NameNotFoundException {
if (isPackageEcmGuarded(packageName)) {