Merge "AS: use dock device for volume when dock device is selected." into udc-dev

This commit is contained in:
Jiabin Huang
2023-04-12 18:55:59 +00:00
committed by Android (Google) Code Review

View File

@@ -7053,13 +7053,16 @@ public class AudioService extends IAudioService.Stub
return deviceSet.iterator().next();
} else {
// Multiple device selection is either:
// - dock + one other device: give priority to dock in this case.
// - speaker + one other device: give priority to speaker in this case.
// - one A2DP device + another device: happens with duplicated output. In this case
// retain the device on the A2DP output as the other must not correspond to an active
// selection if not the speaker.
// - HDMI-CEC system audio mode only output: give priority to available item in order.
if (deviceSet.contains(AudioSystem.DEVICE_OUT_SPEAKER)) {
if (deviceSet.contains(AudioSystem.DEVICE_OUT_DGTL_DOCK_HEADSET)) {
return AudioSystem.DEVICE_OUT_DGTL_DOCK_HEADSET;
} else if (deviceSet.contains(AudioSystem.DEVICE_OUT_SPEAKER)) {
return AudioSystem.DEVICE_OUT_SPEAKER;
} else if (deviceSet.contains(AudioSystem.DEVICE_OUT_SPEAKER_SAFE)) {
// Note: DEVICE_OUT_SPEAKER_SAFE not present in getDeviceSetForStreamDirect