收藏
回答

微信小程序向低功耗蓝牙设备写入数据的函数无响应,怎么回事?

我正在开发一个低功耗蓝牙的小程序,蓝牙设备是用的HC-08.在尝试向蓝牙设备写入数据时,我调用了wx.writeBLECharacteristicValue函数,并向其中加入了回调函数success, fail和complete。但是包括complete在内,没有任何一个回调函数被执行,就是说,我的数据没有发出去。我已经确定了我的设备有write标签,并且我要发送的数据也没有超过20个字节,请问这是怎么一回事呢?

writeBLECharValStandAlone()
  {
    var that = this;
    var i = 1;
    let buffer = new ArrayBuffer(1)
    let dataView = new DataView(buffer)
    dataView.setUint8(0, 9)
    while(i!=0){
      wx.writeBLECharacteristicValue({
        deviceId: that.data._deviceId,
        serviceId: that.data._serviceId,
        characteristicId: that.data._characteristicId,
        value: buffer,
        success: function (res) {
          console.log("wrote:" + dataView.getUint8(0))
          i=0;
        },
        fail: function (res) {
          console.log("write failed." + res.errMsg + res.errCode)
        },
        complete: function () {
          console.log("finished.")
        },
      })
      i += 1
      console.log("trying"+i)
    }
  },



最后一次编辑于  09-29
回答关注问题邀请回答
收藏

2 个回答

  • 社区技术运营专员-娇华
    社区技术运营专员-娇华
    09-29

    你好,麻烦在手机微信那里上传下日志: 我->设置->帮助与反馈右上角有个上报日志的入口,麻烦提供一下微信号,时间点

    09-29
    赞同
    回复
  • 昕宇
    昕宇
    09-29

    你不能一次只发送一次9吗,你这样程序没死就不错了

    09-29
    赞同
    回复 1
    • zura
      zura
      09-29
      头一次只发了一次9,但是同样没有反应,后面为了检查程序是否执行才增加循环的
      09-29
      回复
问题标签