小程序蓝牙调试问题求解

发布于 6 年前作者 guiyingchen1669 次浏览最后编辑 6 年前来自 ask

在android设备上使用的小程序通过wx.getBluetoothDevices()接口获取搜索到的测试设备信息,回调函数的返回值device对象没有文档上的advertisData参数,返回信息如下:

{"deviceId":"4F:A5:27:17:83:C0","name":"未知设备","RSSI":-90,"advertisServiceUUIDs":["00006BFC-0000-1000-8000-00805F9B34FB"],"localName":""}。想问一下,为什么回调函数返回值没有文档上说明的advertisData参数????

10 回复
yang56
yang561 楼6 年前

这个问题有结论了吗?确实有时候广播包内没有advertisData,serviceData也是时有时没有。

tianjuan
tianjuan2 楼6 年前

这里想问一下是返回的所有device都没有advertisData,还是说只有目标Device没有advertisData?

qwan
qwan3 楼6 年前

稍等,我让相关同事在这个帖子跟进下, advertisData  是 arraybuffer 类型, console.log 可能打印不出来。

gxiong
gxiong4 楼6 年前

按照官方文档里的advertisData是一个键值对,返回值里连这个键都没有

liangxiulan
liangxiulan5 楼6 年前

搜索到的MiKettle设备不是我们的设备,有advertisDataUUIDs,没有advertisData,其他的不是不知名的设备有advertisDataUUIDs也有advertisDataUUIDs

mduan
mduan6 楼6 年前

是目标设备广播包的问题还是API的问题????

xia71
xia717 楼6 年前

18725521185 是我的微信 你是要我去看看android收到的广播包数据么?

nqian
nqian8 楼6 年前

只要有advertisServiceUUIDs参数就没有advertisData,不全是目标设备没有advertisData,像搜索到的设备MiKettle就不是我们的目标设备

kshen
kshen9 楼6 年前

客户端自查了逻辑:广播包内数据如果没有advertisData数据则没吐出,查看了@南先生 日志,也看到了部分设备是有正确吐advertisData的,这里可能要更加具体去看广播包的内容(因为原生App可以),分析一下是A客户端解析出来的有问题,还是B说广播包的问题。

方便添加一下微信,跟进一下这个问题吗?

感谢。

weiding
weiding10 楼4 年前

我们android开发的app也是获取的这个广播包里的数据的,他们说有的