summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jakub Pawlowski <jpawlowski@google.com> 2018-04-04 10:15:12 -0700
committer Jakub Pawlowski <jpawlowski@google.com> 2018-04-05 04:58:45 +0000
commitc274fb2d22da480cd48100bbfd13e19a5c0d78aa (patch)
treef9c83bf02b01e8923bf505ebc361c33fc99c396b
parent6a95a2cc52ee10b74dacc560cfb9e41243fcd31f (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.java6
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;
}