diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/A2dpSinkProfile.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/A2dpSinkProfile.java index 77f2e19abd97e..a1c8de566578e 100755 --- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/A2dpSinkProfile.java +++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/A2dpSinkProfile.java @@ -122,9 +122,6 @@ final class A2dpSinkProfile implements LocalBluetoothProfile { return true; } } - for (BluetoothDevice src : srcs) { - mService.disconnect(src); - } } return mService.connect(device); } diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/HfpClientProfile.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/HfpClientProfile.java index 9b699bcfd38cc..169aac9eb60ff 100755 --- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/HfpClientProfile.java +++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/HfpClientProfile.java @@ -132,11 +132,6 @@ final class HfpClientProfile implements LocalBluetoothProfile { return true; } } - // Handsfree HF only supports one source connection and hence it is OK to disconnect - // the only connected device here. - for (BluetoothDevice src : srcs) { - mService.disconnect(src); - } } return mService.connect(device); } diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/MapClientProfile.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/MapClientProfile.java index a7621fcf02fb1..6efa4687d9134 100644 --- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/MapClientProfile.java +++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/MapClientProfile.java @@ -115,10 +115,10 @@ public final class MapClientProfile implements LocalBluetoothProfile { public boolean connect(BluetoothDevice device) { if (mService == null) return false; List connectedDevices = getConnectedDevices(); - if (connectedDevices != null) { - for (BluetoothDevice connectedDevice : connectedDevices) { - mService.disconnect(connectedDevice); - } + if (connectedDevices != null && connectedDevices.contains(device)) { + // Connect to same device, Ignore it + Log.d(TAG,"Ignoring Connect"); + return true; } return mService.connect(device); } diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/PbapClientProfile.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/PbapClientProfile.java index 72a3b3a00e221..bd37abeb3b0c0 100755 --- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/PbapClientProfile.java +++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/PbapClientProfile.java @@ -144,9 +144,6 @@ final class PbapClientProfile implements LocalBluetoothProfile { return true; } } - for (BluetoothDevice src : srcs) { - mService.disconnect(src); - } } Log.d(TAG,"PBAPClientProfile attempting to connect to " + device.getAddress());