收藏
回答

通过IOS设备使用wx.getBluetoothDevices,如何获取搜索到的蓝牙设备列表的名称?

1.使用Android设备,可以正常获取到低功耗蓝牙设备的localName,无论loaclName如何修改,每次进入都能准确获取;

2.使用Ios设备,无法获取到低功耗蓝牙设备的名称,设备的name显示未知设备,如果与位置设备进行连接后,再次进入小程序就可以识别name;

3.请问如何解决使用Ios设备获取低功耗蓝牙设备的名称?

备注:Android版本10.0;Ios版本13.6;微信版本7.0.15

回答关注问题邀请回答
收藏

1 个回答

  • 同步
    同步
    2020-08-13

    wx.getBluetoothDevices

    获取在蓝牙模块生效期间所有已发现的蓝牙设备。包括已经和本机处于连接状态的设备。


    wx.onBluetoothDeviceFound(function callback)



    搜索设备,一定程度上来说,IOS用wx.getBluetoothDevices方法搜索过一次后,后面重新搜索会比(wx.onBluetoothDeviceFound )方法快的,但是wx.getBluetoothDevices 对华为手机来说,简直是个噩梦。(一定程度上跟低功耗设备有关)

    而使用 onBluetoothDeviceFound 方法可以自定义定时器,搜索超时后进行中断搜索,完全满足超时处理。

    设备的 name 显示未知设备 ,建议用 onBluetoothDeviceFound 方法试试。。不排除遇到一些低功耗设备刚启动的时候,name 是不及时广播的,因此获取到一次后,可以将 deviceId 记录下来,下次查询的时候, deviceId 和 name 同时查找,应该可以解决问题

    2020-08-13
    有用
    回复
登录 后发表内容
问题标签