WatchManagermWatchManager=WatchManager.getInstance();//1.通知SDK蓝牙设备状态//targetDevice:目标设备//connectionstatus:连接状态//注意:连接状态需要转换成StateCode的连接状态mWatchManager.notifyBtDeviceConnection(targetDevice,StateCode.CONNECTION_OK);//2.通知SDK接收数据//targetDevice:目标设备//data:byte数组,接收到目标数据发送的数据mWatchManager.notifyReceiveDeviceData(targetDevice,data);//3.SDK通知外部需要发送数据(在子类重写方法实现)//device:目标设备//data:发送数据sendDataToDevice(BluetoothDevicedevice,byte[]data)注意事项1.透传连接状态需要转换库内定义的连接状态2.如设备需要认证流程,请连接成功后并完成设备认证流程再回调成功状态3.发送数据接口,如果是BLE实现,需要注意MTU分包和队列式发数•BLE的MTU分包处理:BLE连接会协商MTU值,超出MTU的值,会被系统抛弃。为了避免数据丢失,请按照MTU大小发送,若发送数据长度超过MTU,则需要进行MTU分包发送处理•BLE发送-队列式发数:BLE并发式发送容易导致手机系统BLE底层协议栈卡住。建议发送数据后根据BluetoothGattCallback#onCharacteristicWrite回调的状态,进行队列式发数处理
杰理之手表外部状态和数据同步【篇】
最新推荐文章于 2023-09-23 08:46:39 发布