连接体重秤(广播模式)设备,实时体重数据是通过广播数据获取,在ios上wx.onBluetoothDeviceFound方法会根据广播数据的变化多次搜索到蓝牙设备,从而提取广播数据。但是在android设备上,只能搜索到一次设备。
请问安卓上是否作了去重复处理。那如果要通过小程序 监听蓝牙广播应该如何操作
Array.prototype.map.call(new Uint8Array(buffer), x => (‘00’ + x.toString(16)).slice(-2)).join(’’); 返回的数据什么格式?还需要后续处理吗?应为这样得到的数据和我在app(iOS)端获取的数据不一样?🙏🙏🙏
谢谢,已经可以正常获取了。但是红米手机上(android4.4.4)参数无效。
还有一个小问题,两个系统广播数据类型不同,Ios广播数据需要base64ToArrayBuffer转换后才是ArrayBuffer类型
ios:
var data = wx.base64ToArrayBuffer(advertisData)
var str = buf2hex(data)
android:
buf2hex(advertisData)
function buf2hex(buffer) {
return Array.prototype.map.call(new Uint8Array(buffer), x => (‘00’ + x.toString(16)).slice(-2)).join(’’);
}