AVRCP: Updating mRemoteVolue before sending setAbsoluteVolume
To avoid setAbsoluteVolume call twice updating
mRemoteVolume with mLocalVolume before setVolumeNative
function call.
CRs-Fixed: 2454985
Change-Id: I2bff4f13b96687ec6487664af6f2d317116db4d9
diff --git a/packages_apps_bluetooth_ext/src/avrcp/Avrcp_ext.java b/packages_apps_bluetooth_ext/src/avrcp/Avrcp_ext.java
index cd83150..6147857 100644
--- a/packages_apps_bluetooth_ext/src/avrcp/Avrcp_ext.java
+++ b/packages_apps_bluetooth_ext/src/avrcp/Avrcp_ext.java
@@ -816,9 +816,10 @@
remVol = convertToAudioStreamVolume(remVol);
}
Log.d(TAG,"vol = " + vol + "remVol = " + remVol);
- if(remVol != -1 && vol != remVol &&
+ if (vol != remVol &&
deviceFeatures[deviceIndex].mCurrentDevice != null) {
setVolumeNative(volume , getByteAddress(deviceFeatures[deviceIndex].mCurrentDevice));
+ deviceFeatures[deviceIndex].mRemoteVolume = volume;
if (deviceFeatures[deviceIndex].mCurrentDevice.isTwsPlusDevice()) {
AdapterService adapterService = AdapterService.getAdapterService();
BluetoothDevice peer_device =
@@ -1187,6 +1188,7 @@
complete and making synchronization to send only one setAbsolute volume
during connection*/
if(getVolume(deviceFeatures[deviceIndex].mCurrentDevice) != -1) {
+ deviceFeatures[deviceIndex].mRemoteVolume = absVol;
setAbsVolumeFlag(deviceFeatures[deviceIndex].mCurrentDevice);
break;
}