diff options
-rw-r--r-- | service/java/com/android/role/RoleService.java | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/service/java/com/android/role/RoleService.java b/service/java/com/android/role/RoleService.java index 2524627eb..a2a6bab35 100644 --- a/service/java/com/android/role/RoleService.java +++ b/service/java/com/android/role/RoleService.java @@ -100,15 +100,22 @@ public class RoleService extends SystemService implements RoleUserState.Callback private static final long GRANT_DEFAULT_ROLES_INTERVAL_MILLIS = 1000; - private static final String[] DEFAULT_APPLICATION_ROLES = { - RoleManager.ROLE_ASSISTANT, - RoleManager.ROLE_BROWSER, - RoleManager.ROLE_CALL_REDIRECTION, - RoleManager.ROLE_CALL_SCREENING, - RoleManager.ROLE_DIALER, - RoleManager.ROLE_HOME, - RoleManager.ROLE_SMS, - }; + private static final String[] DEFAULT_APPLICATION_ROLES; + + static { + List<String> defaultApplicationRoles = new ArrayList<>(); + defaultApplicationRoles.add(RoleManager.ROLE_ASSISTANT); + defaultApplicationRoles.add(RoleManager.ROLE_BROWSER); + defaultApplicationRoles.add(RoleManager.ROLE_CALL_REDIRECTION); + defaultApplicationRoles.add(RoleManager.ROLE_CALL_SCREENING); + defaultApplicationRoles.add(RoleManager.ROLE_DIALER); + defaultApplicationRoles.add(RoleManager.ROLE_HOME); + defaultApplicationRoles.add(RoleManager.ROLE_SMS); + if (SdkLevel.isAtLeastV()) { + defaultApplicationRoles.add(RoleManager.ROLE_WALLET); + } + DEFAULT_APPLICATION_ROLES = defaultApplicationRoles.toArray(new String[0]); + } @NonNull private final AppOpsManager mAppOpsManager; |