1// Signature format: 2.0 2package android.app.role { 3 4 public interface OnRoleHoldersChangedListener { 5 method public void onRoleHoldersChanged(@NonNull String, @NonNull android.os.UserHandle); 6 } 7 8 public abstract class RoleControllerService extends android.app.Service { 9 ctor public RoleControllerService(); 10 method @WorkerThread public abstract boolean onAddRoleHolder(@NonNull String, @NonNull String, int); 11 method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent); 12 method @WorkerThread public abstract boolean onClearRoleHolders(@NonNull String, int); 13 method @WorkerThread public abstract boolean onGrantDefaultRoles(); 14 method @Deprecated public abstract boolean onIsApplicationQualifiedForRole(@NonNull String, @NonNull String); 15 method public boolean onIsApplicationVisibleForRole(@NonNull String, @NonNull String); 16 method public abstract boolean onIsRoleVisible(@NonNull String); 17 method @WorkerThread public abstract boolean onRemoveRoleHolder(@NonNull String, @NonNull String, int); 18 field public static final String SERVICE_INTERFACE = "android.app.role.RoleControllerService"; 19 } 20 21 public final class RoleManager { 22 method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void addOnRoleHoldersChangedListenerAsUser(@NonNull java.util.concurrent.Executor, @NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle); 23 method @RequiresPermission(android.Manifest.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<java.lang.Boolean>); 24 method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean addRoleHolderFromController(@NonNull String, @NonNull String); 25 method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void clearRoleHoldersAsUser(@NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); 26 method @NonNull @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public java.util.List<java.lang.String> getHeldRolesFromController(@NonNull String); 27 method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHolders(@NonNull String); 28 method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHoldersAsUser(@NonNull String, @NonNull android.os.UserHandle); 29 method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void removeOnRoleHoldersChangedListenerAsUser(@NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle); 30 method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void removeRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); 31 method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean removeRoleHolderFromController(@NonNull String, @NonNull String); 32 method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public void setRoleNamesFromController(@NonNull java.util.List<java.lang.String>); 33 field public static final int MANAGE_HOLDERS_FLAG_DONT_KILL_APP = 1; // 0x1 34 } 35 36} 37 38