Taro.onBluetoothDeviceFound(callback)
Listens on the new device discovery event.
Notes
- If a device is called back in
Taro.onBluetoothDeviceFound
, this device is added to the array obtained by theTaro.getBluetoothDevices
API. - Some Android models require location permissions before they can discover devices. Be sure to grant location permissions in such cases.
Type
(callback: Callback) => void
Parameters
Callback
The callback function for the new device discovery event.
(result: CallbackResult) => void
Property | Type |
---|---|
result | CallbackResult |
CallbackResult
Property | Type | Description |
---|---|---|
devices | CallbackResultBlueToothDevice[] | The list of newly discovered devices |
CallbackResultBlueToothDevice
Property | Type | Description |
---|---|---|
RSSI | number | The signal strength of the current Bluetooth device |
advertisData | ArrayBuffer | The ManufacturerData field in the broadcast data field of the current Bluetooth device |
advertisServiceUUIDs | string[] | The ServiceUUIDs field in the broadcast data field of the current Bluetooth device |
deviceId | string | Device ID |
localName | string | The LocalName field in the broadcast data field of the current Bluetooth device |
name | string | The name of the Bluetooth device. Some devices may not have a name. |
serviceData | Record<string, any> | The ServiceData field in the broadcast data field of the current Bluetooth device |
Sample Code
// Example of an ArrayBuffer converted to a hexadecimal string
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 Support
API | WeChat Mini-Program | H5 | React Native |
---|---|---|---|
Taro.onBluetoothDeviceFound | ✔️ |