跳到主要内容
版本:2.x

Taro.onBluetoothDeviceFound(callback)

监听寻找到新设备的事件

注意

  • 若在 Taro.onBluetoothDeviceFound 回调了某个设备,则此设备会添加到 Taro.getBluetoothDevices 接口获取到的数组中。
  • 安卓下部分机型需要有位置权限才能搜索到设备,需留意是否开启了位置权限

参考文档

类型

(callback: Callback) => void

参数

Callback

寻找到新设备的事件的回调函数

(result: CallbackResult) => void
参数类型
resultCallbackResult

CallbackResult

参数类型说明
devicesCallbackResultBlueToothDevice[]新搜索到的设备列表

CallbackResultBlueToothDevice

新搜索到的设备

参数类型说明
RSSInumber当前蓝牙设备的信号强度
advertisDataArrayBuffer当前蓝牙设备的广播数据段中的 ManufacturerData 数据段。
advertisServiceUUIDsstring[]当前蓝牙设备的广播数据段中的 ServiceUUIDs 数据段
deviceIdstring用于区分设备的 id
localNamestring当前蓝牙设备的广播数据段中的 LocalName 数据段
namestring蓝牙设备名称,某些设备可能没有
serviceDataRecord<string, any>当前蓝牙设备的广播数据段中的 ServiceData 数据段

示例代码

// ArrayBuffer转16进度字符串示例
function ab2hex(buffer) {
var hexArr = Array.prototype.map.call(
new Uint8Array(buffer),
function(bit) {
return ('00' + bit.toString(16)).slice(-2)
}
)
return hexArr.join('');
}
Taro.onBluetoothDeviceFound(function (res) {
var devices = res.devices;
console.log('new device list has founded')
console.dir(devices)
console.log(ab2hex(devices[0].advertisData))
})

API 支持度

API微信小程序H5React Native
Taro.onBluetoothDeviceFound✔️