Android BLE:onxvicesDiscoverd永远不会在带有Android 7.0的Nexus 5X上调用

时间:2016-12-07 11:14:14

标签: android bluetooth-lowenergy nexus-5

我正在尝试连接蓝牙LE设备。偶尔我会观察到以下行为:

onClientConnectionState表示已建立连接,我调用discoverServices。但永远不会调用onServicesDiscoverd回调,并且连接在30秒后丢失,状态为8 = LINK_LOSS,表示客户端超时。尝试重新连接会一次又一次地导致相同的行为。

D/BluetoothAdapter: STATE_ON
D/BluetoothGatt: connect() - device: 5C:31:3E:84:F3:A8, auto: false
D/BluetoothGatt: registerApp()
D/BluetoothGatt: registerApp() - UUID=f7d6124f-2987-46dc-8c23-9b03397fa010
D/BluetoothGatt: onClientRegistered() - status=0 clientIf=5
D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=5 device=5C:31:3E:84:F3:A8
D/BluetoothGatt: discoverServices() - device: 5C:31:3E:84:F3:A8
... about 30s
D/BluetoothGatt: onClientConnectionState() - status=8 clientIf=5 device=5C:31:3E:84:F3:A8
D/BluetoothGatt: cancelOpen() - device: 5C:31:3E:84:F3:A8
D/BluetoothGatt: close()
D/BluetoothGatt: unregisterApp() - mClientIf=5

取消配对设备并重新启动blootooth将恢复正常行为,但这似乎不是一个好的解决方案。

较低的Android版本有threads,因此这是一个难以解决的硬件问题吗?

0 个答案:

没有答案