diff options
| author | 2018-04-04 10:15:12 -0700 | |
|---|---|---|
| committer | 2018-04-05 04:58:45 +0000 | |
| commit | c274fb2d22da480cd48100bbfd13e19a5c0d78aa (patch) | |
| tree | f9c83bf02b01e8923bf505ebc361c33fc99c396b | |
| parent | 6a95a2cc52ee10b74dacc560cfb9e41243fcd31f (diff) | |
Persist volume level on reconnections for Hearing Aid
Devices in mFullVolumeDevices have volume level reset to maximum value
in checkFixedVolumeDevices.
Bug: 69623109
Test: change Hearing Aid volume, restart phone, verify volume persisted
Change-Id: Iba134c0b3dc959c19c59f89c3d4ac02eed1e216f
| -rw-r--r-- | services/core/java/com/android/server/audio/AudioService.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index 3e82c25836a8..82124636a486 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -588,7 +588,7 @@ public class AudioService extends IAudioService.Stub AudioSystem.DEVICE_OUT_HDMI_ARC | AudioSystem.DEVICE_OUT_SPDIF | AudioSystem.DEVICE_OUT_AUX_LINE; - int mFullVolumeDevices = AudioSystem.DEVICE_OUT_HEARING_AID; + int mFullVolumeDevices = 0; private final boolean mMonitorRotation; @@ -4765,6 +4765,8 @@ public class AudioService extends IAudioService.Stub index = getAbsoluteVolumeIndex((getIndex(device) + 5)/10); } else if ((device & mFullVolumeDevices) != 0) { index = (mIndexMax + 5)/10; + } else if ((device & AudioSystem.DEVICE_OUT_HEARING_AID) != 0) { + index = (mIndexMax + 5)/10; } else { index = (getIndex(device) + 5)/10; } @@ -4785,6 +4787,8 @@ public class AudioService extends IAudioService.Stub index = getAbsoluteVolumeIndex((getIndex(device) + 5)/10); } else if ((device & mFullVolumeDevices) != 0) { index = (mIndexMax + 5)/10; + } else if ((device & AudioSystem.DEVICE_OUT_HEARING_AID) != 0) { + index = (mIndexMax + 5)/10; } else { index = (mIndexMap.valueAt(i) + 5)/10; } |