Android 关闭连接时调用两次BLE onConnectionStateChange

Android 关闭连接时调用两次BLE onConnectionStateChange,android,bluetooth-lowenergy,Android,Bluetooth Lowenergy,终于让我的设备(基于TI的CC2541)与我的手机(一款运行Android 4.3的原型/非商用手机)配合使用。我可以成功地扫描、发现、连接和获取通知。但是,当我断开连接(调用BluetoothGatt.disconnect())时,onConnectionStateChange回调会在newState=STATE\u DISCONNECTED(如预期的那样)的情况下调用,但随后会立即在newState=STATE\u CONNECTED的情况下再次调用 连接肯定已终止,因此我不确定为什么会接到

终于让我的设备(基于TI的CC2541)与我的手机(一款运行Android 4.3的原型/非商用手机)配合使用。我可以成功地扫描、发现、连接和获取通知。但是,当我断开连接(调用BluetoothGatt.disconnect())时,onConnectionStateChange回调会在newState=STATE\u DISCONNECTED(如预期的那样)的情况下调用,但随后会立即在newState=STATE\u CONNECTED的情况下再次调用

连接肯定已终止,因此我不确定为什么会接到第二个onConnectionStateChange呼叫。有没有人经历过类似的事情?

检查onConnectionStateChange中提供给您的状态;如果状态不是0(确定),则您实际上没有连接。我发现在很多情况下,我会收到已连接的消息,但状态表明发生了其他事情。

您的设备是否已连接?我隐约记得一些自动连接发生在保税设备,但就像我说的,这是模糊的。根据设备的物理堆栈,我也得到了不可靠的结果,因此您可能需要一些关于堆栈稳定性以及与新的4.3 Blable API兼容性的供应商数据。我也有完全相同的问题。