最新消息:前端博客、web前端博客、Angularjs、javascript、jQuery、HTML5、CSS3

混合APP、小程序蓝牙调试备忘录

JavaScript AZ 1385浏览 0评论

最近在写东家与华为合作的一款混合APP开发,我负责写自家JSSDK。遇到一些难点,在些备忘记录。

在建立连接后,收到状态我们都会认为底层已经准备好了,所以,在getBLEDeviceCharacteristics建立onBLEConnectionStateChange事件中,我直接开启接收notifyBLECharacteristicValueChange,并向设备发送密码建立连接。在这基础上我还意延时1.5秒。然而,在安卓手机上底层却给我回调了一个连接被拒绝。后面找写底层的开发debug下,发现在连接通道没完全准备情况下发指令会被中断。也是因为跟蓝牙设备有关系,可能有些通讯慢,需要等上几秒。最终给出方案延时致4秒后再发送写的指令。

同时,在小程序中使用window是不支持的,需要使用global代替。在startBluetoothDevicesDiscovery、stopBluetoothDevicesDiscovery方面有些手机的状态可能不是想象的中的结果。结果就是要么重APP,要么重启手机蓝牙。

蓝牙事件较多,在创建对列时,没有太多考虑细节。如,超时,阻塞等情况,也算积累经验了。

 

转载请注明:TUTERM.COM » 混合APP、小程序蓝牙调试备忘录

如果您觉得本文的内容对您的学习有所帮助,您可以支付宝(左)或微信(右):
alipay weichat

您必须 登录 才能发表评论!