diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index d06d37a2c97e4..9b3ceb374690e 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -5216,21 +5216,6 @@ public class AudioManager { } } - /** - * @hide - * Notifies AudioService that it is connected to an A2DP device that supports absolute volume, - * so that AudioService can send volume change events to the A2DP device, rather than handling - * them. - */ - public void avrcpSupportsAbsoluteVolume(String address, boolean support) { - final IAudioService service = getService(); - try { - service.avrcpSupportsAbsoluteVolume(address, support); - } catch (RemoteException e) { - throw e.rethrowFromSystemServer(); - } - } - /** * {@hide} */ diff --git a/media/java/android/media/IAudioService.aidl b/media/java/android/media/IAudioService.aidl index bc6d2cd921b04..4c475477a72c8 100755 --- a/media/java/android/media/IAudioService.aidl +++ b/media/java/android/media/IAudioService.aidl @@ -176,8 +176,6 @@ interface IAudioService { int getEncodedSurroundMode(int targetSdkVersion); - oneway void avrcpSupportsAbsoluteVolume(String address, boolean support); - void setSpeakerphoneOn(IBinder cb, boolean on); boolean isSpeakerphoneOn(); diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index 4adfd4ea05c5d..d3e8f245bbb7f 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -6185,6 +6185,11 @@ public class AudioService extends IAudioService.Stub if (pkgName == null) { pkgName = ""; } + if (device.getType() == AudioDeviceInfo.TYPE_BLUETOOTH_A2DP) { + avrcpSupportsAbsoluteVolume(device.getAddress(), + deviceVolumeBehavior == AudioManager.DEVICE_VOLUME_BEHAVIOR_ABSOLUTE); + return; + } int audioSystemDeviceOut = AudioDeviceInfo.convertDeviceTypeToInternalDevice( device.getType()); @@ -7862,7 +7867,7 @@ public class AudioService extends IAudioService.Stub } } - public void avrcpSupportsAbsoluteVolume(String address, boolean support) { + private void avrcpSupportsAbsoluteVolume(String address, boolean support) { // address is not used for now, but may be used when multiple a2dp devices are supported sVolumeLogger.log(new AudioEventLogger.StringEvent("avrcpSupportsAbsoluteVolume addr=" + address + " support=" + support));