Don't GATT Connect to BT-Classic device
During the CTS Verifier Test - Bluetooth LE Secure Server/Client Test -
Bluetooth LE Server/Client Test, the test will stop and fail after the
bonding. The reason is that the test is trying to do a GATT Connect to
the BT-Classic bonded device and this GATT Connect will fail.
Bug: 72571368
Test: Run the CTS Verifier - Bluetooth LE Secure Server/Client Test -
Bluetooth LE Server/Client Test
Change-Id: I609d8838abbdefeb41e4fc6c6925f3addd63e306
(cherry picked from commit 2fee0af8015402008b55021a8baba8a7b73fb259)
diff --git a/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth/BleClientService.java b/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth/BleClientService.java
index e61cefe..6b686e0 100644
--- a/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth/BleClientService.java
+++ b/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth/BleClientService.java
@@ -1292,7 +1292,15 @@
int state = intent.getIntExtra(BluetoothDevice.EXTRA_BOND_STATE, BluetoothDevice.BOND_NONE);
switch (state) {
case BluetoothDevice.BOND_BONDED:
- mBluetoothGatt = connectGatt(device, mContext, false, mSecure, mGattCallbacks);
+ if ((mBluetoothGatt == null) &&
+ (device.getType() != BluetoothDevice.DEVICE_TYPE_CLASSIC)) {
+ if (DEBUG) {
+ Log.d(TAG, "onReceive:BOND_BONDED: calling connectGatt device="
+ + device + ", mSecure=" + mSecure);
+ }
+ mBluetoothGatt = connectGatt(device, mContext, false, mSecure,
+ mGattCallbacks);
+ }
break;
case BluetoothDevice.BOND_NONE:
notifyError("Failed to create bond.");