title: Taro.startBluetoothDevicesDiscovery(option)

sidebar_label: startBluetoothDevicesDiscovery

开始搜寻附近的蓝牙外围设备。此操作比较耗费系统资源,请在搜索并连接到设备后调用 Taro.stopBluetoothDevicesDiscovery 方法停止搜索。

支持情况:startBluetoothDevicesDiscovery - 图1 startBluetoothDevicesDiscovery - 图2 startBluetoothDevicesDiscovery - 图3

参考文档

类型

  1. (option: Option) => Promise<Promised>

参数

参数 类型
option Option

Promised

参数 类型 说明
errMsg string 成功:ok,错误:详细信息

Option

参数 类型 必填 说明
allowDuplicatesKey boolean 是否允许重复上报同一设备。如果允许重复上报,则 Taro.onBlueToothDeviceFound 方法会多次上报同一设备,但是 RSSI 值会有不同。
complete (res: TaroGeneral.BluetoothError) => void 接口调用结束的回调函数(调用成功、失败都会执行)
fail (res: TaroGeneral.BluetoothError) => void 接口调用失败的回调函数
interval number 上报设备的间隔。0 表示找到新设备立即上报,其他数值根据传入的间隔上报。
services string[] 要搜索的蓝牙设备主 service 的 uuid 列表。某些蓝牙设备会广播自己的主 service 的 uuid。如果设置此参数,则只搜索广播包有对应 uuid 的主服务的蓝牙设备。建议主要通过该参数过滤掉周边不需要处理的其他蓝牙设备。
success (res: TaroGeneral.BluetoothError) => void 接口调用成功的回调函数

示例代码

  1. // 以微信硬件平台的蓝牙智能灯为例,主服务的 UUID 是 FEE7。传入这个参数,只搜索主服务 UUID 为 FEE7 的设备
  2. Taro.startBluetoothDevicesDiscovery({
  3. services: ['FEE7'],
  4. success: function (res) {
  5. console.log(res)
  6. }
  7. })