[Audiosharing] Only check the active state of lead device.

Flagged with enable_le_audio_sharing

Bug: 305620450
Test: manual
Change-Id: I5db46fedbb15ac01f9ea70ba83246086241b25dd
This commit is contained in:
Yiyi Shen
2023-12-05 17:58:32 +08:00
parent fe306a7fc2
commit 517ab6e040

View File

@@ -42,6 +42,7 @@ import java.util.stream.Collectors;
public class AudioSharingUtils {
private static final String TAG = "AudioSharingUtils";
private static final boolean DEBUG = BluetoothUtils.D;
/**
* Fetch {@link CachedBluetoothDevice}s connected to the broadcast assistant. The devices are
@@ -77,6 +78,9 @@ public class AudioSharingUtils {
}
groupedDevices.get(groupId).add(cachedDevice);
}
if (DEBUG) {
Log.d(TAG, "fetchConnectedDevicesByGroupId: " + groupedDevices);
}
return groupedDevices;
}
@@ -221,16 +225,7 @@ public class AudioSharingUtils {
* @return Whether the device is an active le audio device.
*/
public static boolean isActiveLeAudioDevice(CachedBluetoothDevice cachedDevice) {
if (BluetoothUtils.isActiveLeAudioDevice(cachedDevice)) {
return true;
}
// Return true if member device is an active le audio device.
for (CachedBluetoothDevice device : cachedDevice.getMemberDevice()) {
if (BluetoothUtils.isActiveLeAudioDevice(device)) {
return true;
}
}
return false;
return BluetoothUtils.isActiveLeAudioDevice(cachedDevice);
}
/**
@@ -296,7 +291,10 @@ public class AudioSharingUtils {
}
}
if (targetDevice != null && !isActiveLeAudioDevice(targetDevice)) {
Log.d(TAG, "Set active device: " + targetDevice.getDevice().getAnonymizedAddress());
Log.d(
TAG,
"updateActiveDeviceIfNeeded, set active device: "
+ targetDevice.getDevice().getAnonymizedAddress());
targetDevice.setActive();
}
}