From a4cf7151812fa924485768e4f9cd7da56dd8d2d5 Mon Sep 17 00:00:00 2001 From: Yiyi Shen Date: Mon, 22 Jan 2024 13:59:05 +0800 Subject: [PATCH] [Audiosharing] Set/get compatibility config by toggle. Also use startPrivateBroadcast() to start the broadcast with compatibility config stored in SettingsProvider. Test: manual Bug: 305620450 Bug: 292538935 Change-Id: Iff067833fb0668531aa32957b414585751f2bcee --- ...udioSharingCompatibilityPreferenceController.java | 12 ++++++++---- .../AudioSharingDevicePreferenceController.java | 4 +--- .../AudioSharingSwitchBarController.java | 3 +-- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java index 9dda0a1bbf6..c39257d1ba1 100644 --- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java +++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingCompatibilityPreferenceController.java @@ -139,16 +139,20 @@ public class AudioSharingCompatibilityPreferenceController extends TogglePrefere @Override public boolean isChecked() { - // TODO: return real compatibility config. - return false; + return mBroadcast != null && mBroadcast.getImproveCompatibility(); } @Override public boolean setChecked(boolean isChecked) { - if (mBroadcast == null) { + if (mBroadcast == null || mBroadcast.getImproveCompatibility() == isChecked) { + Log.d( + TAG, + "Skip setting improveCompatibility, unchanged = " + + (mBroadcast.getImproveCompatibility() == isChecked)); return false; } - // TODO: set real compatibility config. + mBroadcast.setImproveCompatibility(isChecked); + // TODO: call updateBroadcast once framework change ready. return true; } diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java index ae1d791c72b..84b63b1a7e9 100644 --- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java +++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingDevicePreferenceController.java @@ -22,7 +22,6 @@ import android.bluetooth.BluetoothLeBroadcast; import android.bluetooth.BluetoothLeBroadcastAssistant; import android.bluetooth.BluetoothLeBroadcastMetadata; import android.bluetooth.BluetoothLeBroadcastReceiveState; -import android.bluetooth.BluetoothLeBroadcastSubgroupSettings; import android.bluetooth.BluetoothProfile; import android.content.Context; import android.util.Log; @@ -539,8 +538,7 @@ public class AudioSharingDevicePreferenceController extends BasePreferenceContro mTargetSinks.add(device.getDevice()); } } - mBroadcast.startPrivateBroadcast( - BluetoothLeBroadcastSubgroupSettings.QUALITY_HIGH); + mBroadcast.startPrivateBroadcast(); }); }); } diff --git a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java index 3f0717dfa01..b82c94d6ad2 100644 --- a/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java +++ b/src/com/android/settings/connecteddevice/audiosharing/AudioSharingSwitchBarController.java @@ -22,7 +22,6 @@ import android.bluetooth.BluetoothLeBroadcast; import android.bluetooth.BluetoothLeBroadcastAssistant; import android.bluetooth.BluetoothLeBroadcastMetadata; import android.bluetooth.BluetoothLeBroadcastReceiveState; -import android.bluetooth.BluetoothLeBroadcastSubgroupSettings; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; @@ -339,7 +338,7 @@ public class AudioSharingSwitchBarController extends BasePreferenceController } mDeviceItemsForSharing.remove(0); } - mBroadcast.startPrivateBroadcast(BluetoothLeBroadcastSubgroupSettings.QUALITY_HIGH); + mBroadcast.startPrivateBroadcast(); } private void stopAudioSharing() {