- 需求的场景描述(希望解决的问题)
根据uuid获取附近的beacon设备信息
调用wx.getBeacons接口后获取到beacon设备的uuid、major、minor、proximity、rssi、accuracy,但没有beacon设备的MAC地址和广播数据,因此又调用wx.getBluetoothDevices蓝牙接口获取到蓝牙列表,判断设备的localname是否是beacon设置的name,从而取得deviceID、serviceData信息,但是没有uuid字段。
那么问题来了,如何把俩个接口获取到的信息整合在一块呢
wx.getBeacons接口得到beacon设备列表
[{
uuid:1,
major:1,
minor:1,
proximity:1,
rssi:1,
accuracy:1
},
{
uuid:2,
major:2,
minor:2,
proximity:2,
rssi:2,
accuracy:2
}
]
wx.getBluetoothDevices接口通过过滤得到beacon设备列表
[{
localName:"设备1",
searviceData:1,
deviceId:1,
advertisServiceUUIDs:1
},
{
localName:"设备2",
searviceData:2,
deviceId:2,
advertisServiceUUIDs:2
}
]
如何将俩个接口获取到的设备信息一一对应呢,如何整合在一块呢
微信小程序开发问题解答
微信小程序开发者回答:
不对啊,我已经在ios设备上获取到了mac地址,是从蓝牙接口中的serviceData字段。
微信小程序开发者回答:
这里不理解为什么要整合,微信小程序接口层无法提供这种能力的。
beacon 设备本身就是用 beaconUUID、majorID、minorID 来标识自身的,开发者只需要关注这三个字段来标识特定的某个 beacon 设备,系统的 beacon 接口是无法获取到 beacon 设备的 deviceId 的。
本文网址:http://www.91bianli.com/weixinxiaochengxu/41210.html