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

关于蓝牙监听寻找到新设备读取(advertiseData)的问题

问题模块
API和组件

wx.onBluetoothDeviceFound(CALLBACK)在返回的device 对象里面有个advertiseData属性,类型是ArrayBuffer,可是我在真机上得到的是string,这是怎么一回事呢,求解,感谢


网友回复

vix:

楼主再问一下 ,你那边现在解析出来是什么格式,我这边安卓和iOS解析出来真机上结果不一样,和APP端结果也不一样???

vix:

OK啦  ???

zxfei:

advertiseData 是不能直接打印的,

var data = wx.base64ToArrayBuffer(advertisData);

var str = buf2hex(data);

function buf2hex(buffer) {

  return Array.prototype.map.call(new Uint8Array(buffer), x => ('00' + x.toString(16)).slice(-2)).join('');

}


vix:

楼主怎么解决的? 我遇到的问题是真机测试打印advertiseData为空 将advertiseData转化成base64可以显示字符串信息。求解



zxfei:

解决了,我写的有问题 ...

ifwang:

什么系统,微信是什么版本呢?

评论 抢沙发

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

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

云免签H5支付