Do not remove bonded devices from cached device list upon a device scan
Bug: 17405122 Change-Id: I3f5cc6ddc8f85d3b6223f9ff60e1d5eeb76c530a
This commit is contained in:
@@ -244,7 +244,7 @@ public final class BluetoothSettings extends DeviceListPreferenceFragment implem
|
||||
removeAllDevices();
|
||||
}
|
||||
|
||||
mLocalManager.getCachedDeviceManager().clearCachedDevices();
|
||||
mLocalManager.getCachedDeviceManager().clearNonBondedDevices();
|
||||
mAvailableDevicesCategory.removeAll();
|
||||
mInitialScanStarted = true;
|
||||
mLocalAdapter.startScanning(true);
|
||||
|
@@ -112,8 +112,13 @@ final class CachedBluetoothDeviceManager {
|
||||
return device.getAddress();
|
||||
}
|
||||
|
||||
public synchronized void clearCachedDevices() {
|
||||
mCachedDevices.clear();
|
||||
public synchronized void clearNonBondedDevices() {
|
||||
for (int i = mCachedDevices.size() - 1; i >= 0; i--) {
|
||||
CachedBluetoothDevice cachedDevice = mCachedDevices.get(i);
|
||||
if (cachedDevice.getBondState() != BluetoothDevice.BOND_BONDED) {
|
||||
mCachedDevices.remove(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public synchronized void onScanningStateChanged(boolean started) {
|
||||
|
Reference in New Issue
Block a user