Merge "Add permission check while creating CompanionDeviceService" into sc-dev am: dfa9b3058f

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15394690

Change-Id: I62386e2e617ef79afcd9249710506bf38bfafbea
This commit is contained in:
Guojing Yuan
2021-07-27 23:09:49 +00:00
committed by Automerger Merge Worker

View File

@@ -17,6 +17,7 @@
package com.android.server.companion;
import static android.Manifest.permission.BIND_COMPANION_DEVICE_SERVICE;
import static android.bluetooth.le.ScanSettings.CALLBACK_TYPE_ALL_MATCHES;
import static android.bluetooth.le.ScanSettings.SCAN_MODE_BALANCED;
import static android.content.Context.BIND_IMPORTANT;
@@ -1197,6 +1198,12 @@ public class CompanionDeviceManagerService extends SystemService implements Bind
+ " has " + packageResolveInfos.size());
return new ServiceConnector.NoOp<>();
}
String servicePermission = packageResolveInfos.get(0).serviceInfo.permission;
if (!BIND_COMPANION_DEVICE_SERVICE.equals(servicePermission)) {
Slog.w(LOG_TAG, "Binding CompanionDeviceService must have "
+ BIND_COMPANION_DEVICE_SERVICE + " permission.");
return new ServiceConnector.NoOp<>();
}
ComponentName componentName = packageResolveInfos.get(0).serviceInfo.getComponentName();
Slog.i(LOG_TAG, "Initializing CompanionDeviceService binding for " + componentName);
return new ServiceConnector.Impl<ICompanionDeviceService>(getContext(),