Expose RoleManager#getDefaultSmsPackage
Expose this method for module libraries. It's needed to support a public
method in TelephonyProvider that doesn't require any permissions.
Test: atest RoleManagerTest#smsRoleHolderAvailableWithoutObserveRoleHolders
Fixes: 169350676
Change-Id: Ia2725dc5aa0de74b2cf67ecd0666917ae27adda9
diff --git a/api/module-lib-current.txt b/api/module-lib-current.txt
index d27f5a5..f5bf787 100644
--- a/api/module-lib-current.txt
+++ b/api/module-lib-current.txt
@@ -16,6 +16,14 @@
}
+package android.app.role {
+
+ public final class RoleManager {
+ method @Nullable public String getDefaultSmsPackage(int);
+ }
+
+}
+
package android.content.rollback {
public class RollbackManagerFrameworkInitializer {
diff --git a/api/test-current.txt b/api/test-current.txt
index 5082c57..3a96618 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -765,6 +765,7 @@
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<java.lang.Boolean>);
method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean addRoleHolderFromController(@NonNull String, @NonNull String);
method @RequiresPermission("android.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>);
+ method @Nullable public String getDefaultSmsPackage(int);
method @NonNull @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public java.util.List<java.lang.String> getHeldRolesFromController(@NonNull String);
method @NonNull @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public java.util.List<java.lang.String> getRoleHolders(@NonNull String);
method @NonNull @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public java.util.List<java.lang.String> getRoleHoldersAsUser(@NonNull String, @NonNull android.os.UserHandle);
diff --git a/core/java/android/app/role/RoleManager.java b/core/java/android/app/role/RoleManager.java
index 253c73796..26edba3 100644
--- a/core/java/android/app/role/RoleManager.java
+++ b/core/java/android/app/role/RoleManager.java
@@ -634,6 +634,8 @@
* @hide
*/
@Nullable
+ @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
+ @TestApi
public String getDefaultSmsPackage(@UserIdInt int userId) {
try {
return mService.getDefaultSmsPackage(userId);
diff --git a/non-updatable-api/module-lib-current.txt b/non-updatable-api/module-lib-current.txt
index 85136df..bcab49b 100644
--- a/non-updatable-api/module-lib-current.txt
+++ b/non-updatable-api/module-lib-current.txt
@@ -16,6 +16,14 @@
}
+package android.app.role {
+
+ public final class RoleManager {
+ method @Nullable public String getDefaultSmsPackage(int);
+ }
+
+}
+
package android.content.rollback {
public class RollbackManagerFrameworkInitializer {