收藏
回答

设备和蓝牙通信,发送数据并接收数据时如何解决会丢失回调的第一包数据的问题?

机型:Redmi K30s

系统版本号:MIUI13.0.4

微信版本号:8.0.20

代码如图:

现象:只有单包数据时没返回数据,有多包数据时会丢失第一包。

回答关注问题邀请回答
收藏

1 个回答

  • Cjiang
    Cjiang
    2022-04-07

    你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2022-04-07
    有用
    回复 5
    • 千古一梦
      千古一梦
      2022-04-12
      代码片段:https://developers.weixin.qq.com/s/UDsiCsmj7lyG
      机型:Redmi K30s
      系统版本号:MIUI13.0.4
      微信版本号:8.0.20
      情景:硬件返回多包数据时第一次返回会丢失第一包数据,后面的返回时正常的;硬件返回一包数据时没有收到数据。
      2022-04-12
      回复
    • 千古一梦
      千古一梦
      2022-04-12
      补充:硬件返回一包必收不到返回,硬件返回多包时偶发性第一次返回丢失第一包。
      2022-04-12
      回复
    • Cjiang
      Cjiang
      2022-04-12回复千古一梦
      读写在前, notify在后, 这个逻辑应该有问题, notify success回调里再去开始读写呗
      2022-04-12
      回复
    • 千古一梦
      千古一梦
      2022-04-12回复Cjiang
      我这边使用的服务只支持notify和write。我把红箭头的write去掉并且试着在开始监听特征值后write。目前多包数据的返回没问题了,但还是蓝牙设备发来单包数据还是没法触发onBLECharacteristicValueChange。我这边用mingw串口助手测试蓝牙的返回时没问题的,测试结果如图。
      这是新的代码片段:https://developers.weixin.qq.com/s/LpUlSsmH70yG
      2022-04-12
      回复
    • 千古一梦
      千古一梦
      2022-04-13
      已经解决了。感激不尽!
      2022-04-13
      回复
登录 后发表内容