首先,我的英语很差。
我正在开发一个连接到BLE设备的Android应用程序,并读取我需要检查的特定GATT特征和服务。我使用Android Dev网站上的BluetoothLeGATT示例作为参考。我可以毫无问题地连接到预定义的地址,并阅读GATT属性更新。
接下来,我想设计一个自动连接设备并读取设备数据的功能。
下列的程序:
1.自动扫描,设备将存储在DeviceList中;
2.将设备(mBluetoothGatt.connect())连接到DeviceList序列并读取数据,然后断开连接(mBluetoothGatt.disconnect()),最后关闭(mBluetoothGatt.close());
3.间隔后几分钟重复第二步;
结果: 在连接之前没有任何问题。
然后就会出现这样的问题:我只调用一次Connect(mBluetoothGatt.connect()),但会多次调用BluetoothGattCallback.onConnectionStateChange()。
因此会反复出现连接和断开连接。
然后会有一个名为disconnect的设备,但没有取消配对。
我该如何解决?