html52.com
我爱小程序-开发者交流社区

小程序的蓝牙API 写入数据显示成功但实际对方并没有收到?

        给公司开发的一款蓝牙助手小程序,自己测试用的iphone6s plus,所有的功能都完美运行,但是到其他手机尤其是安卓机和高版本的iphone,向蓝牙设备写数据都显示成功,但实际上对方并没有收到,也无法做出响应。现在已知的iphone7、iphone8、iphoneXR、小米9、荣耀V9、荣耀V10都有这种情况,测试成功的有iphone6splus、华为P10 、小米5,不知道是什么原因,希望官方能帮助解惑

        写入数据的代码,参数和arraybuffer转换函数都是测试过没问题的

/**

 * 向蓝牙发送数据

 * @param {Object} dataArr

 * @param {Object} deviceId

 * @param {Object} serviceId

 * @param {Object} characteristicId

 */

const sendData=function(dataArr,deviceId,serviceId,characteristicId,callback){

// 数组转内存

let ab=this.arr2ab(dataArr),myRes={};

// 传数据到蓝牙设备

uni.writeBLECharacteristicValue({

deviceId:deviceId,

serviceId:serviceId,

characteristicId:characteristicId,

value:ab,

success:function(res){

// console.log('数据写入成功')

myRes={code:0,msg:dataArr[0]+'数据写入成功'},

callback(myRes)

},

fail:function(res){

myRes={code:1,msg:dataArr[0]+'数据写入失败'},

callback(myRes)

}

})

}

补充一下,开发用的是uni-app

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付