[Audiosharing] Fix volume control.

1. Unregister the volume control callbacks in onDestroy
2. Reuse SeekBarPreference#setProgress
3. Fetch volume from AudioManager if got invalid volume from VC service.

Flagged with enable_le_audio_sharing

Bug: 305620450
Test: manual
Change-Id: Id63d1dbff4c3cbdeb91c2537d951c39e1a932220
This commit is contained in:
Yiyi Shen
2023-12-04 16:05:28 +08:00
parent 6e3bf1ee10
commit afbd9d9894
3 changed files with 60 additions and 29 deletions

View File

@@ -102,7 +102,9 @@ public class AudioSharingDeviceVolumeControlUpdater extends BluetoothDeviceUpdat
}
};
AudioSharingDeviceVolumePreference vPreference =
new AudioSharingDeviceVolumePreference(mPrefContext, cachedDevice, listener);
new AudioSharingDeviceVolumePreference(mPrefContext, cachedDevice);
vPreference.initialize();
vPreference.setOnSeekBarChangeListener(listener);
vPreference.setKey(getPreferenceKey());
vPreference.setIcon(com.android.settingslib.R.drawable.ic_bt_untethered_earbuds);
vPreference.setTitle(cachedDevice.getName());