diff options
author | 2025-03-06 11:46:30 -0800 | |
---|---|---|
committer | 2025-03-09 23:18:35 -0700 | |
commit | c2ebd479547716df6539acdca2a57ab17102103d (patch) | |
tree | 7fc1223f97383d958a746a21ac54b20b665c4df7 /service | |
parent | 3b5c22b26a4319572eba9f1cc5f6f041838a612f (diff) |
25Q1 flag removal: enforce_resolve_system_service_behavior
Bug: 366273182
Fix: 366273182
Flag: com.android.bluetooth.flags.enforce_resolve_system_service_behavior
Test: m com.android.bt
Change-Id: If256127c2e74c514007a315e479cc0c7780ffe9d
Diffstat (limited to 'service')
-rw-r--r-- | service/src/com/android/server/bluetooth/BluetoothManagerService.java | 39 | ||||
-rw-r--r-- | service/tests/src/com/android/server/bluetooth/BluetoothManagerServiceTest.java | 4 |
2 files changed, 2 insertions, 41 deletions
diff --git a/service/src/com/android/server/bluetooth/BluetoothManagerService.java b/service/src/com/android/server/bluetooth/BluetoothManagerService.java index 699b1cec5c..d352c22693 100644 --- a/service/src/com/android/server/bluetooth/BluetoothManagerService.java +++ b/service/src/com/android/server/bluetooth/BluetoothManagerService.java @@ -61,7 +61,6 @@ import android.content.ServiceConnection; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; -import android.content.pm.ResolveInfo; import android.os.Binder; import android.os.Build; import android.os.Bundle; @@ -1766,12 +1765,7 @@ class BluetoothManagerService { UserHandle user = UserHandle.CURRENT; int flags = Context.BIND_AUTO_CREATE | Context.BIND_IMPORTANT; Intent intent = new Intent(IBluetooth.class.getName()); - ComponentName comp = resolveSystemService(intent); - if (comp == null && !Flags.enforceResolveSystemServiceBehavior()) { - Log.e(TAG, "No ComponentName found for intent=" + intent); - return; - } - intent.setComponent(comp); + intent.setComponent(resolveSystemService(intent)); mHandler.sendEmptyMessageDelayed(MESSAGE_TIMEOUT_BIND, TIMEOUT_BIND_MS); Log.d(TAG, "Start binding to the Bluetooth service with intent=" + intent); @@ -2240,38 +2234,7 @@ class BluetoothManagerService { return bOptions.toBundle(); } - private ComponentName legacyresolveSystemService(@NonNull Intent intent) { - List<ResolveInfo> results = mContext.getPackageManager().queryIntentServices(intent, 0); - if (results == null) { - return null; - } - ComponentName comp = null; - for (int i = 0; i < results.size(); i++) { - ResolveInfo ri = results.get(i); - if ((ri.serviceInfo.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) { - continue; - } - ComponentName foundComp = - new ComponentName( - ri.serviceInfo.applicationInfo.packageName, ri.serviceInfo.name); - if (comp != null) { - throw new IllegalStateException( - "Multiple system services handle " - + intent - + ": " - + comp - + ", " - + foundComp); - } - comp = foundComp; - } - return comp; - } - private ComponentName resolveSystemService(@NonNull Intent intent) { - if (!Flags.enforceResolveSystemServiceBehavior()) { - return legacyresolveSystemService(intent); - } List<ComponentName> results = mContext.getPackageManager().queryIntentServices(intent, 0).stream() .filter( diff --git a/service/tests/src/com/android/server/bluetooth/BluetoothManagerServiceTest.java b/service/tests/src/com/android/server/bluetooth/BluetoothManagerServiceTest.java index 4c50a8701a..ab80f152e6 100644 --- a/service/tests/src/com/android/server/bluetooth/BluetoothManagerServiceTest.java +++ b/service/tests/src/com/android/server/bluetooth/BluetoothManagerServiceTest.java @@ -95,9 +95,7 @@ public class BluetoothManagerServiceTest { @Parameters(name = "{0}") public static List<FlagsParameterization> getParams() { - return FlagsParameterization.allCombinationsOf( - Flags.FLAG_GET_NAME_AND_ADDRESS_AS_CALLBACK, - Flags.FLAG_ENFORCE_RESOLVE_SYSTEM_SERVICE_BEHAVIOR); + return FlagsParameterization.allCombinationsOf(Flags.FLAG_GET_NAME_AND_ADDRESS_AS_CALLBACK); } public BluetoothManagerServiceTest(FlagsParameterization flags) { |