Fix dup preference key on Connected devices page
Use different key (prefix + CacheBluetooothDevice hash) for each BluetoothDevicePreference to avoid Java crash due to "Two different ViewHolders have the same change ID". Test: atest Fix: 325831741 Flag: EXEMPT safe fix only change preference key string Change-Id: Ic993f3cab206b794045c2f46e6b4b376bfa3adea
This commit is contained in:
@@ -21,6 +21,7 @@ import android.content.Context;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
|
||||
@@ -35,7 +36,8 @@ public class AudioSharingBluetoothDeviceUpdater extends BluetoothDeviceUpdater
|
||||
|
||||
private static final String TAG = "AudioSharingBluetoothDeviceUpdater";
|
||||
|
||||
private static final String PREF_KEY = "audio_sharing_bt";
|
||||
@VisibleForTesting
|
||||
static final String PREF_KEY_PREFIX = "audio_sharing_bt_";
|
||||
|
||||
@Nullable private LocalBluetoothManager mLocalBtManager;
|
||||
|
||||
@@ -76,8 +78,8 @@ public class AudioSharingBluetoothDeviceUpdater extends BluetoothDeviceUpdater
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPreferenceKey() {
|
||||
return PREF_KEY;
|
||||
protected String getPreferenceKeyPrefix() {
|
||||
return PREF_KEY_PREFIX;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user