diff options
author | Eugene Susla <eugenesusla@google.com> | 2017-04-27 17:09:23 -0700 |
---|---|---|
committer | Eugene Susla <eugenesusla@google.com> | 2017-04-27 19:14:17 -0700 |
commit | 066422180bd8a93739ae89dd9eaaa4a021d976b7 (patch) | |
tree | fa54af6f6a2213570a5fac39f545bcf87f803cb6 /services/companion | |
parent | b9a2e3213029d268066c7293a6b3028f0c6ff9d0 (diff) |
Rename Companion permissions
Test: ensure permission check still works
Fixes: 37721270
Change-Id: I1ff5c2924ee837c8b4a6e2825dce171e6a2e00cb
Diffstat (limited to 'services/companion')
-rw-r--r-- | services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java index dc84c45800ab..6093241a6681 100644 --- a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +++ b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java @@ -414,8 +414,9 @@ public class CompanionDeviceManagerService extends SystemService implements Bind Binder.withCleanCallingIdentity(() -> { try { - if (ArrayUtils.contains(packageInfo.requestedPermissions, - Manifest.permission.RUN_IN_BACKGROUND)) { + if (containsEither(packageInfo.requestedPermissions, + Manifest.permission.RUN_IN_BACKGROUND, + Manifest.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND)) { mIdleController.addPowerSaveWhitelistApp(packageInfo.packageName); } else { mIdleController.removePowerSaveWhitelistApp(packageInfo.packageName); @@ -425,8 +426,9 @@ public class CompanionDeviceManagerService extends SystemService implements Bind } NetworkPolicyManager networkPolicyManager = NetworkPolicyManager.from(getContext()); - if (ArrayUtils.contains(packageInfo.requestedPermissions, - Manifest.permission.USE_DATA_IN_BACKGROUND)) { + if (containsEither(packageInfo.requestedPermissions, + Manifest.permission.USE_DATA_IN_BACKGROUND, + Manifest.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND)) { networkPolicyManager.addUidPolicy( packageInfo.applicationInfo.uid, NetworkPolicyManager.POLICY_ALLOW_METERED_BACKGROUND); @@ -438,6 +440,10 @@ public class CompanionDeviceManagerService extends SystemService implements Bind }); } + private static <T> boolean containsEither(T[] array, T a, T b) { + return ArrayUtils.contains(array, a) || ArrayUtils.contains(array, b); + } + @Nullable private PackageInfo getPackageInfo(String packageName, int userId) { return Binder.withCleanCallingIdentity(() -> { |