readCharacteristic返回true,但是不调用onCharacteristicRead

时间:2019-03-05 18:18:45

标签: android android-ble characteristics

连接到BLE设备并发现其服务后,我检查某个特征是可读的,然后调用readCharacteristic。该调用返回true,但未调用回调onCharacteristicRead
仅30秒后,以特征== null调用onCharacteristicRead,并以状态码等于22调用onDeviceDisconnected

我已经对nRF Connecte进行了测试,以读取相同的特性,并且工作正常。

可能有什么问题吗?

1 个答案:

答案 0 :(得分:0)

它在30秒后超时并因错误22断开连接(本地设备终止了连接),这一事实表明外围设备在30秒内没有响应,这是GATT标准所要求的。您应该调试外围设备以找到原因。

它在nRF Connect中起作用的原因可能是先前发送/接收的GATT使外围设备处于不同的状态。

您可以在Android中查看HCI日志以查看所有原始数据包,以了解发生了什么情况。