1.判断用户是否打开蓝牙:
由于iBeacon是基于蓝牙传输数据的,所以第一步要判断是否打开蓝牙,如果没有打开则提示用户去打开蓝牙,然后在下拉刷新时重新判断,确认用户打开之后再搜索iBeacon设备
wx.openBluetoothAdapter({ success: () => { //搜索iBeacon设备 }, fail: () => { wx.showModal({ title: '提醒', content: '请先打开您的手机蓝牙,打开后下拉刷新', }) } })
2.通过wx.startBeaconDiscovery接口,搜索iBeacon设备,如需搜索多个设备,需要将UUID组成一个数组
3.搜索设备成功后,设置 iBeacon 设备的更新事件wx.onBeaconUpdate
4.在监听事件中,获取数据wx.getBeacons
5.根据得到的距离,进行你的业务操作
wx.startBeaconDiscovery({ uuids: ["FDA50693-A4E2-4FB1-AFCF-C6EB07647825","AB8190D5-D11E-4941-ACC4-42F30510B408"], //多个uuid数组 success: function (res) { wx.onBeaconUpdate(function(){ //设置监听事件 wx.getBeacons({ //在监听事件中获取数据 success:res=>{ console.log(res.beacons;) //res.beacons 为搜索到的iBeacon数据数组 //业务代码 } }) }) } })