Bluetooth模块用于管理蓝牙设备,搜索附近蓝牙设备、实现简单数据传输等。
支持搜索发现所有蓝牙设备,但仅支持低功耗蓝牙ble传输协议,不支持蓝牙设备的配对连接传输大量数据。 如果要连接非ble蓝牙设备,可以使用Native.js调用(请到http://ask.dcloud.net.cn搜索bluetooth相关问答)。
方法:
对象:
回调方法:
权限:
5+功能模块(permissions)
closeBluetoothAdapter
关闭蓝牙模块
说明:
断开所有已经建立的连接,释放系统资源,要求在蓝牙功能使用完成后调用(于openBluetoothAdapter成对使用)。 关闭成功后触发options参数中的success回调,失败触发options参数中的fail回调。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
getBluetoothAdapterState
获取本机蓝牙适配器状态
说明:
获取成功后触发options参数中的success回调,失败触发options参数中的fail回调。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
getBluetoothDevices
获取已搜索到的蓝牙设备
说明:
包括已经和本机处于连接状态的设备。 获取成功后触发options参数中的success回调,失败触发options参数中的fail回调。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
getConnectedBluetoothDevices
根据uuid获取处于已连接的设备
说明:
获取成功后触发options参数中的success回调,失败触发options参数中的fail回调。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
onBluetoothAdapterStateChange
监听蓝牙适配器状态变化事件
说明:
蓝牙适配器状态发生变化时触发回调。
参数:
返回值:
void : 无
示例:
uni-app使用plus注意事项
onBluetoothDeviceFound
监听搜索到新设备的事件
说明:
搜索到新设备时触发回调。
参数:
返回值:
void : 无
示例:
uni-app使用plus注意事项
openBluetoothAdapter
初始化蓝牙模块
说明:
初始化成功后触发options参数中的success回调,失败触发options参数中的fail回调。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
startBluetoothDevicesDiscovery
开始搜索附近的蓝牙设备
说明:
此操作比较耗费系统资源,请在搜索并连接到设备后调用stopBluetoothDevicesDiscovery方法停止搜索。 搜索成功后触发options参数中的success回调,失败触发options参数中的fail回调。
参数:
options参数为json类型,包含以下属性:
- services: ( Array[String] ) 可选 要获取设备的uuid列表
- allowDuplicatesKey: ( Boolean ) 可选 是否允许重复上报同一设备
如果允许重复上报,则onBlueToothDeviceFound方法会多次上报同一设备,但是RSSI值会有不同。
- interval: ( Number ) 可选 上报设备的间隔
0表示找到新设备立即上报,其他数值根据传入的间隔上报。
- success: ( BluetoothSuccessCallback ) 可选 开始搜索成功回调函数
搜索到设备后通过onBluetoothDeviceFound设置的回调返回设备信息,此回调只是表明开始搜索。
- fail: ( BluetoothFailCallback ) 可选 开始搜索失败回调函数
- complete: ( BluetoothCompleteCallback ) 可选 开始搜索操作完成回调函数
调用成功或失败都会触发此回调。
返回值:
void : 无
示例:
uni-app使用plus注意事项
stopBluetoothDevicesDiscovery
停止搜寻附近的蓝牙外围设备
说明:
若已经找到需要的蓝牙设备并不需要继续搜索时,应该调用该接口停止蓝牙搜索。 停止成功后触发options参数中的success回调,失败触发options参数中的fail回调。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
closeBLEConnection
断开与低功耗蓝牙设备的连接
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
createBLEConnection
连接低功耗蓝牙设备
说明:
若之前已有搜索过某个蓝牙设备,并成功建立连接,可直接传入之前搜索获取的deviceId尝试连接该设备,无需进行搜索操作。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
setBLEMTU
设置蓝牙最大传输单元
说明:
需在 createBLEConnection 调用成功后调用,mtu 设置范围 (22,512)。 HBuilderX2.8.4+版本支持。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
平台支持:
- Android - 5.1+ (支持)
- iOS - ALL (不支持)
示例:
uni-app使用plus注意事项
getBLEDeviceCharacteristics
获取蓝牙设备指定服务中所有特征值(characteristic)
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
getBLEDeviceRSSI
获取蓝牙设备的信号强度
说明:
需在 createBLEConnection 调用成功后调用。 HBuilderX2.8.4+版本支持。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
getBLEDeviceServices
获取蓝牙设备的所有服务(service)
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
notifyBLECharacteristicValueChange
启用低功耗蓝牙设备特征值变化时的notify功能,订阅特征值
说明:
蓝牙设备服务的特征值必须支持notify或indicate才可以成功调用。 另外,必须先启用notifyBLECharacteristicValueChange才能监听到设备characteristicValueChange事件,即特征值发生变化时通过onBLECharacteristicValueChange注册的事件回调。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
onBLECharacteristicValueChange
监听低功耗蓝牙设备的特征值变化事件
参数:
返回值:
void : 无
示例:
uni-app使用plus注意事项
onBLEConnectionStateChange
监听低功耗蓝牙设备连接状态变化事件
说明:
包括开发者主动连接或断开连接,设备丢失,连接异常断开等。
参数:
返回值:
void : 无
示例:
uni-app使用plus注意事项
readBLECharacteristicValue
读取低功耗蓝牙设备指定特征值的二进制数据值
说明:
指定的特征值需支持read操作才可以成功调用。 并行调用多次可能导致读取失败,读取的数据需要在onBLECharacteristicValueChange方法注册的回调中获取。
参数:
options参数为json类型,包含以下属性:
返回值:
void : 无
示例:
uni-app使用plus注意事项
writeBLECharacteristicValue
向低功耗蓝牙设备指定特征值写入二进制数据
说明:
指定的特征值需支持write操作才可以成功调用。 并行调用多次可能导致读取失败,系统可能会限制单次传输的数据大小,超过最大字节数后可能会发生写入错误,建议每次写入不超过20字节。
参数:
options参数为json类型,包含以下属性:
- deviceId: ( String ) 必选 蓝牙设备的id
- serviceId: ( String ) 必选 蓝牙服务的uuid
- characteristicId: ( String ) 必选 蓝牙特征值的uuid
- value: ( ArrayBuffer ) 必选 要写入的数据
写入到蓝牙设备指定特征值中的二进制值。
- success: ( BluetoothSuccessCallback ) 可选 读取特征值的二进制数据成功回调函数
- fail: ( BluetoothFailCallback ) 可选 读取特征值的二进制数据失败回调函数
- complete: ( BluetoothCompleteCallback ) 可选 读取特征值的二进制数据操作完成回调函数
调用成功或失败都会触发此回调。
返回值:
void : 无
示例:
uni-app使用plus注意事项
BluetoothDeviceInfo
蓝牙设备信息
属性:
- name: (String 类型 )蓝牙设备名称
某些设备可能没有此字段值。
- deviceId: (String 类型 )蓝牙设备的id
- RSSI: (Number 类型 )蓝牙设备的信号强度
- advertisData: (ArrayBuffer 类型 )蓝牙设备的广播数据段中的ManufacturerData数据段
- advertisServiceUUIDs: (Array[String] 类型 )蓝牙设备的广播数据段中的ServiceUUIDs数据段
- localName: (String 类型 )蓝牙设备的广播数据段中的LocalName数据段
- serviceData: (JSON 类型 )蓝牙设备的广播数据段中的ServiceData数据段
BluetoothService
蓝牙设备服务信息
属性:
- uuid: (String 类型 )蓝牙设备服务的uuid
- isPrimary: (Boolean 类型 )是否为设备的主服务
Bluetoothcharacteristic
蓝牙设备特征值
属性:
BluetoothcharacteristicProperties
蓝牙设备特征值支持的操作类型
属性:
- read: (Boolean 类型 )特征值是否支持read操作
- write: (Boolean 类型 )特征值是否支持write操作
- notify: (Boolean 类型 )特征值是否支持notify操作
- indicate: (Boolean 类型 )特征值是否支持indicate操作
BluetoothSuccessCallback
成功回调函数
说明:
不同接口触发的成功回调参数event包含的属性存在差异,具体参考对应的接口描述说明。
参数:
返回值:
void : 无
BluetoothFailCallback
失败回调函数
参数:
返回值:
void : 无
BluetoothCompleteCallback
操作完成回调函数
说明:
调用成功或失败都会触发此回调。
参数:
返回值:
void : 无
BluetoothAdapterStateChangeCallback
蓝牙适配器状态变化事件回调函数
说明:
蓝牙适配器状态发生变化时触发此回调。
参数:
返回值:
void : 无
BluetoothDeviceFoundCallback
蓝牙适配器搜索到新设备事件回调函数
说明:
搜索到蓝牙设备时触发此回调。
参数:
返回值:
void : 无
BluetoothDeviceRSSICallback
获取蓝牙设备信号强度成功回调函数
说明:
获取蓝牙设备信号强度时触发此回调。
参数:
返回值:
void : 无
BLEConnectionStateChangeCallback
低功耗蓝牙设备连接状态变化事件回调函数
说明:
蓝牙设备连接状态发生变化时触发此回调。
参数:
返回值:
void : 无
BLECharacteristicValueChangeCallback
低功耗蓝牙设备的特征值变化事件回调函数
说明:
蓝牙设备对应的特征值发生变化时触发此回调。
参数:
返回值:
void : 无