我已经实现了蓝牙BLE并成功地进行了读/写命令。但有一段时间onCharacteristicRead
没有被调用。可能是什么问题?有时它完全正常工作,因此读/写代码是正确的。是否必须配对设备才能执行这些操作?或者只是connectGatt
就足够了?
根据我的理解,我们需要在BLE设备上找到可用的MLDP服务。
mBluetoothGatt.discoverServices();
一旦发现服务,我们需要迭代MLDP服务。每项服务都有一个BluetoothGattCharacteristic列表。使用提供的UUID识别我们自己的特性并尝试读取特征。此外,我们需要根据硬件实现设置以下属性。
setCharacteristicNotification
setCharacteristicIndication
setWriteType