If due to UI sluggishness or because of some faulty
third-party app triggering multiple connect requests,
frameworks receives two back to back connect requests
for the same device, ignore the second connect request
in frameworks itself.
Change-Id: I77de0c2bde91891260e6198b2236ca27d253b839
List<BluetoothDevice> sinks = getConnectedDevices();
if (sinks != null) {
for (BluetoothDevice sink : sinks) {
- mService.disconnect(sink);
+ if (sink.equals(device)) {
+ // Connect to same device, Ignore it
+ Log.d(TAG,"Not disconnecting device = " + sink);
+ return true;
+ }
}
}
return mService.connect(device);
List<BluetoothDevice> sinks = mService.getConnectedDevices();
if (sinks != null) {
for (BluetoothDevice sink : sinks) {
- Log.d(TAG,"Not disconnecting device = " + sink);
+ if (sink.equals(device)) {
+ // Connect to same device, Ignore it
+ Log.d(TAG,"Not disconnecting device = " + sink);
+ return true;
+ }
}
}
return mService.connect(device);