From a39cf78c63a1225490a74147c9a4dbb23b3c2865 Mon Sep 17 00:00:00 2001 From: Hai Zhang Date: Tue, 28 Apr 2020 12:14:01 -0700 Subject: [PATCH] Add RoleControllerManagerTest. Fixes: 155119713 Test: atest RoleControllerManagerTest Change-Id: If90ba60cccbe1589365142a06d917a87b7a092ef --- api/test-current.txt | 5 ++++ .../app/role/RoleControllerManager.java | 25 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/api/test-current.txt b/api/test-current.txt index 5d91adf6c0604..a2fe6e3e83f3a 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -732,6 +732,11 @@ package android.app.role { method public void onRoleHoldersChanged(@NonNull String, @NonNull android.os.UserHandle); } + public class RoleControllerManager { + method @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public void isApplicationVisibleForRole(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public void isRoleVisible(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + } + public final class RoleManager { method @RequiresPermission("android.permission.OBSERVE_ROLE_HOLDERS") public void addOnRoleHoldersChangedListenerAsUser(@NonNull java.util.concurrent.Executor, @NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle); method @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public void addRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); diff --git a/core/java/android/app/role/RoleControllerManager.java b/core/java/android/app/role/RoleControllerManager.java index 16ddbc147d823..96a4debd3d6af 100644 --- a/core/java/android/app/role/RoleControllerManager.java +++ b/core/java/android/app/role/RoleControllerManager.java @@ -21,6 +21,7 @@ import android.annotation.CallbackExecutor; import android.annotation.NonNull; import android.annotation.RequiresPermission; import android.annotation.SystemService; +import android.annotation.TestApi; import android.app.ActivityThread; import android.content.ComponentName; import android.content.Context; @@ -48,6 +49,7 @@ import java.util.function.Consumer; * @hide */ @SystemService(Context.ROLE_CONTROLLER_SERVICE) +@TestApi public class RoleControllerManager { private static final String LOG_TAG = RoleControllerManager.class.getSimpleName(); @@ -73,6 +75,8 @@ public class RoleControllerManager { * PackageManagerService lock in constructor. * * @see #createWithInitializedRemoteServiceComponentName(Handler, Context) + * + * @hide */ public static void initializeRemoteServiceComponentName(@NonNull Context context) { sRemoteServiceComponentName = getRemoteServiceComponentName(context); @@ -83,6 +87,8 @@ public class RoleControllerManager { * name so that we can avoid acquiring the PackageManagerService lock in constructor. * * @see #initializeRemoteServiceComponentName(Context) + * + * @hide */ @NonNull public static RoleControllerManager createWithInitializedRemoteServiceComponentName( @@ -113,6 +119,9 @@ public class RoleControllerManager { } } + /** + * @hide + */ public RoleControllerManager(@NonNull Context context) { this(getRemoteServiceComponentName(context), context.getMainThreadHandler(), context); } @@ -128,6 +137,8 @@ public class RoleControllerManager { /** * @see RoleControllerService#onGrantDefaultRoles() + * + * @hide */ public void grantDefaultRoles(@NonNull @CallbackExecutor Executor executor, @NonNull Consumer callback) { @@ -141,6 +152,8 @@ public class RoleControllerManager { /** * @see RoleControllerService#onAddRoleHolder(String, String, int) + * + * @hide */ public void onAddRoleHolder(@NonNull String roleName, @NonNull String packageName, @RoleManager.ManageHoldersFlags int flags, @NonNull RemoteCallback callback) { @@ -155,6 +168,8 @@ public class RoleControllerManager { /** * @see RoleControllerService#onRemoveRoleHolder(String, String, int) + * + * @hide */ public void onRemoveRoleHolder(@NonNull String roleName, @NonNull String packageName, @RoleManager.ManageHoldersFlags int flags, @NonNull RemoteCallback callback) { @@ -169,6 +184,8 @@ public class RoleControllerManager { /** * @see RoleControllerService#onClearRoleHolders(String, int) + * + * @hide */ public void onClearRoleHolders(@NonNull String roleName, @RoleManager.ManageHoldersFlags int flags, @NonNull RemoteCallback callback) { @@ -186,6 +203,8 @@ public class RoleControllerManager { * * @deprecated Use {@link #isApplicationVisibleForRole(String, String, Executor, Consumer)} * instead. + * + * @hide */ @RequiresPermission(Manifest.permission.MANAGE_ROLE_HOLDERS) public void isApplicationQualifiedForRole(@NonNull String roleName, @NonNull String packageName, @@ -201,8 +220,11 @@ public class RoleControllerManager { /** * @see RoleControllerService#onIsApplicationVisibleForRole(String, String) + * + * @hide */ @RequiresPermission(Manifest.permission.MANAGE_ROLE_HOLDERS) + @TestApi public void isApplicationVisibleForRole(@NonNull String roleName, @NonNull String packageName, @NonNull @CallbackExecutor Executor executor, @NonNull Consumer callback) { AndroidFuture operation = mRemoteService.postAsync(service -> { @@ -216,8 +238,11 @@ public class RoleControllerManager { /** * @see RoleControllerService#onIsRoleVisible(String) + * + * @hide */ @RequiresPermission(Manifest.permission.MANAGE_ROLE_HOLDERS) + @TestApi public void isRoleVisible(@NonNull String roleName, @NonNull @CallbackExecutor Executor executor, @NonNull Consumer callback) { AndroidFuture operation = mRemoteService.postAsync(service -> {