diff options
author | Grace Jia <xiaotonj@google.com> | 2023-12-01 01:42:03 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2023-12-01 01:42:03 +0000 |
commit | 1db78146d6cce042c2410b6b50ce4ca286679da2 (patch) | |
tree | e400a00f8957370c31c04fac6a19f0a9773f3332 | |
parent | 11d0950ae4ca61ffd8dc71d94d6c12df79d5d3fe (diff) | |
download | Telecomm-1db78146d6cce042c2410b6b50ce4ca286679da2.tar.gz |
Revert^2 "Fix ringtone play issue via LE devices."
This reverts commit 11d0950ae4ca61ffd8dc71d94d6c12df79d5d3fe.
Reason for revert: fix b/31267505
Change-Id: Ica55561884ae5d5615a462f096e0193af7762271
3 files changed, 10 insertions, 9 deletions
diff --git a/src/com/android/server/telecom/bluetooth/BluetoothDeviceManager.java b/src/com/android/server/telecom/bluetooth/BluetoothDeviceManager.java index b19bf818f..297fd7289 100644 --- a/src/com/android/server/telecom/bluetooth/BluetoothDeviceManager.java +++ b/src/com/android/server/telecom/bluetooth/BluetoothDeviceManager.java @@ -711,7 +711,9 @@ public class BluetoothDeviceManager { } public boolean isInbandRingingEnabled() { - BluetoothDevice activeDevice = mBluetoothRouteManager.getBluetoothAudioConnectedDevice(); + // Get the inband ringing enabled status of expected BT device to route call audio instead + // of using the address of currently connected device. + BluetoothDevice activeDevice = mBluetoothRouteManager.getMostRecentlyReportedActiveDevice(); Log.i(this, "isInbandRingingEnabled: activeDevice: " + activeDevice); if (mBluetoothRouteManager.isCachedLeAudioDevice(activeDevice)) { if (mBluetoothLeAudioService == null) { diff --git a/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java b/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java index 91c03b6b1..ce07532af 100644 --- a/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java +++ b/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java @@ -652,6 +652,10 @@ public class BluetoothRouteManager extends StateMachine { } } + public BluetoothDevice getMostRecentlyReportedActiveDevice() { + return mMostRecentlyReportedActiveDevice; + } + public boolean hasBtActiveDevice() { return mLeAudioActiveDeviceCache != null || mHearingAidActiveDeviceCache != null || diff --git a/tests/src/com/android/server/telecom/tests/BluetoothDeviceManagerTest.java b/tests/src/com/android/server/telecom/tests/BluetoothDeviceManagerTest.java index a12846845..ee6f0f203 100644 --- a/tests/src/com/android/server/telecom/tests/BluetoothDeviceManagerTest.java +++ b/tests/src/com/android/server/telecom/tests/BluetoothDeviceManagerTest.java @@ -756,19 +756,14 @@ public class BluetoothDeviceManagerTest extends TelecomTestCase { when(mBluetoothLeAudio.isInbandRingtoneEnabled(1)).thenReturn(true); when(mBluetoothLeAudio.getGroupId(eq(device3))).thenReturn(1); receiverUnderTest.onReceive(mContext, - buildConnectionActionIntent(BluetoothHeadset.STATE_CONNECTED, device1, - BluetoothDeviceManager.DEVICE_TYPE_HEADSET)); - receiverUnderTest.onReceive(mContext, - buildConnectionActionIntent(BluetoothHeadset.STATE_CONNECTED, device2, - BluetoothDeviceManager.DEVICE_TYPE_HEADSET)); - receiverUnderTest.onReceive(mContext, buildConnectionActionIntent(BluetoothHeadset.STATE_CONNECTED, device3, BluetoothDeviceManager.DEVICE_TYPE_LE_AUDIO)); leAudioCallbacksTest.getValue().onGroupNodeAdded(device3, 1); - when(mBluetoothLeAudio.getConnectedGroupLeadDevice(1)).thenReturn(device3); when(mRouteManager.getBluetoothAudioConnectedDevice()).thenReturn(device3); when(mRouteManager.isCachedLeAudioDevice(eq(device3))).thenReturn(true); - assertEquals(3, mBluetoothDeviceManager.getNumConnectedDevices()); + when(mBluetoothLeAudio.getConnectedGroupLeadDevice(1)).thenReturn(device3); + when(mRouteManager.getMostRecentlyReportedActiveDevice()).thenReturn(device3); + assertEquals(1, mBluetoothDeviceManager.getNumConnectedDevices()); assertTrue(mBluetoothDeviceManager.isInbandRingingEnabled()); } |