summaryrefslogtreecommitdiff
path: root/services/companion
diff options
context:
space:
mode:
authorEugene Susla <eugenesusla@google.com>2017-04-27 17:09:23 -0700
committerEugene Susla <eugenesusla@google.com>2017-04-27 19:14:17 -0700
commit066422180bd8a93739ae89dd9eaaa4a021d976b7 (patch)
treefa54af6f6a2213570a5fac39f545bcf87f803cb6 /services/companion
parentb9a2e3213029d268066c7293a6b3028f0c6ff9d0 (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.java14
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(() -> {