Android BLE问题:不支持的传输用于后台连接

时间:2015-10-03 12:23:31

标签: android bluetooth bluetooth-lowenergy

我使用某些BLE设备在BLE上工作:首先发现它,然后尝试连接。但是我得到了错误:

10-03 17:17:45.641    3854-3930/? E/bt-att﹕ Unsupported transport for background connection
10-03 17:17:45.641    3854-3930/? E/bt-btif﹕ bta_gattc_init_bk_conn failed

并且我无法连接(请注意在断开连接之前的奇怪状态1330)):

10-03 17:17:45.641  17474-18298/com.icrealtime.allie D/BluetoothGatt﹕ onClientConnectionState() - status=133 clientIf=7 device=08:00:00:3F:B5:F1

完整日志:

10-03 17:17:45.601    1029-1029/? D/STATUSBAR-WifiQuickSettingButton﹕ onWifiSignalChanged enabled=true enabledDesc:"IC"
10-03 17:17:45.611  17474-17474/com.icrealtime.allie D/BleRpcConnectionFactory﹕ Device found: name=Allie-RA222222222, mac_address=08:00:00:3F:B5:F1, other=08:00:00:3F:B5:F1
10-03 17:17:45.621  17474-17474/com.icrealtime.allie D/BleRpcConnectionFactory﹕ Found and accepted BLE device: 08:00:00:3F:B5:F1
10-03 17:17:45.621  17474-17474/com.icrealtime.allie D/BleRpcConnectionFactory﹕ Stopping discovery
10-03 17:17:45.621  17474-17474/com.icrealtime.allie D/BluetoothAdapter﹕ stopLeScan()
10-03 17:17:45.621    3854-4177/? D/BtGatt.GattService﹕ stopScan() - queue size =1
10-03 17:17:45.621    3854-4052/? D/BtGatt.ScanManager﹕ filter size is 1
10-03 17:17:45.621    3854-4052/? D/BtGatt.ScanManager﹕ delete FilterIndex - 4
10-03 17:17:45.621    1029-1029/? D/StatusBar.NetworkController﹕ refreshSignalCluster - setNWBoosterIndicators(false)
10-03 17:17:45.621    3854-3932/? D/bt_vendor﹕ op for 7
10-03 17:17:45.621    3854-3932/? D/bt_upio﹕ BT_WAKE is asserted already
10-03 17:17:45.621    3854-3929/? D/BtGatt.GattService﹕ onScanFilterParamsConfigured() - clientIf=7, status=0, action=1, availableSpace=16
10-03 17:17:45.621    3854-3929/? D/BtGatt.ScanManager﹕ callback done for clientIf - 7 status - 0
10-03 17:17:45.621    3854-3862/? D/BtGatt.GattService﹕ unregisterClient() - clientIf=7
10-03 17:17:45.621    3854-3932/? D/bt_vendor﹕ op for 7
10-03 17:17:45.621    3854-3932/? D/bt_upio﹕ BT_WAKE is asserted already
10-03 17:17:45.621    3854-4052/? D/BtGatt.ScanManager﹕ stop scan
10-03 17:17:45.621    3854-4052/? D/BtGatt.ScanManager﹕ configureRegularScanParams() - queue=0
10-03 17:17:45.621    3854-3932/? D/bt_vendor﹕ op for 7
10-03 17:17:45.621    3854-3932/? D/bt_upio﹕ BT_WAKE is asserted already
10-03 17:17:45.621    3854-4052/? D/BtGatt.ScanManager﹕ configureRegularScanParams() - ScanSetting Scan mode=-2147483648 mLastConfiguredScanSetting=2
10-03 17:17:45.621  17474-17474/com.icrealtime.allie D/BleRpcConnectionFactory﹕ Connecting to device
10-03 17:17:45.621    3854-4052/? D/BtGatt.ScanManager﹕ configureRegularScanParams() - queue emtpy, scan stopped
10-03 17:17:45.621    3854-3932/? D/bt_vendor﹕ op for 7
10-03 17:17:45.621    3854-3932/? D/bt_upio﹕ BT_WAKE is asserted already
10-03 17:17:45.631    1029-1029/? D/StatusBar.NetworkController﹕ applyOpen
10-03 17:17:45.631  17474-17474/com.icrealtime.allie D/BluetoothGatt﹕ connect() - device: 08:00:00:3F:B5:F1, auto: true
10-03 17:17:45.631  17474-17474/com.icrealtime.allie D/BluetoothGatt﹕ registerApp()
10-03 17:17:45.631  17474-17474/com.icrealtime.allie D/BluetoothGatt﹕ registerApp() - UUID=0b2a4a78-aaf0-4c95-832a-b94eb4513795
10-03 17:17:45.631    1029-1029/? D/StatusBar.NetworkController﹕ refreshSignalCluster - setNWBoosterIndicators(false)
10-03 17:17:45.631    1029-1029/? D/StatusBar.NetworkController﹕ applyOpen
10-03 17:17:45.631    3854-4178/? D/BtGatt.GattService﹕ registerClient() - UUID=0b2a4a78-aaf0-4c95-832a-b94eb4513795
10-03 17:17:45.641    3854-3929/? D/BtGatt.GattService﹕ onClientRegistered() - UUID=0b2a4a78-aaf0-4c95-832a-b94eb4513795, clientIf=7
10-03 17:17:45.641  17474-17488/com.icrealtime.allie D/BluetoothGatt﹕ onClientRegistered() - status=0 clientIf=7
10-03 17:17:45.641    3854-4177/? D/BtGatt.GattService﹕ clientConnect() - address=08:00:00:3F:B5:F1, isDirect=false set own addr = false own addr type:0
10-03 17:17:45.641    3854-3866/? D/BtGatt.GattService﹕ clientConnect() - address=08:00:00:3F:B5:F1, isDirect=false set own addr = false own addr type:0
10-03 17:17:45.641    3854-3929/? D/BtGatt.btif﹕ btif_get_device_type: Device [08:00:00:3f:b5:f1] type 3, addr. type 0
10-03 17:17:45.641    3854-3930/? E/bt-att﹕ Unsupported transport for background connection
10-03 17:17:45.641    3854-3930/? E/bt-btif﹕ bta_gattc_init_bk_conn failed
10-03 17:17:45.641    1029-1029/? D/StatusBar.NetworkController﹕ refreshSignalCluster - setNWBoosterIndicators(false)
10-03 17:17:45.641    3854-3929/? D/BtGatt.btif﹕ btif_get_device_type: Device [08:00:00:3f:b5:f1] type 3, addr. type 0
10-03 17:17:45.641    3854-3930/? E/bt-btif﹕ bta_gattc_process_api_open Failed, unknown client_if: 0
10-03 17:17:45.641    3854-3929/? D/BtGatt.GattService﹕ onConnected() - clientIf=7, connId=65535, address=08:00:00:3F:B5:F1
10-03 17:17:45.641    1029-1029/? D/StatusBar.NetworkController﹕ applyOpen
10-03 17:17:45.641  17474-18298/com.icrealtime.allie D/BluetoothGatt﹕ onClientConnectionState() - status=133 clientIf=7 device=08:00:00:3F:B5:F1
10-03 17:17:45.641  17474-18298/com.icrealtime.allie D/BleRpcConnectionFactory﹕ onConnectionStateChange()
10-03 17:17:45.641    1029-1029/? D/StatusBar.NetworkController﹕ refreshSignalCluster - setNWBoosterIndicators(false)
10-03 17:17:45.641    1029-1029/? D/StatusBar.NetworkController﹕ applyOpen
10-03 17:17:45.651  17474-20038/com.icrealtime.allie D/BleRpcConnectionFactory﹕ Connection state changed from 133 to 0 for 08:00:00:3F:B5:F1 (08:00:00:3F:B5:F1)

有什么问题?我确定我开始从主线程连接。

1 个答案:

答案 0 :(得分:0)

这是一个小小的经验,如果BLE中央处于扫描状态,可能需要在连接到外围设备之前停止扫描。我也遇到了133错误,https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/android-5.1.1_r13/stack/include/gatt_api.h请在这里结帐,GATT_ERROR

记录活动有助于调试,

./ adb logcat :S bt-att: bt-btm:* BluetoothLEint:* BtGatt.ContextMap:*