微信小程序开发API 蓝牙适配器接口

浏览:
字体:
发布时间:2018-01-03 19:46:12
来源:

蓝牙适配器接口


基础库版本 1.1.0 开始支持,低版本需做兼容处理

iOS 微信客户端 6.5.6 版本开始支持,Android 客户端暂不支持

wx.openBluetoothAdapter(OBJECT)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

初始化蓝牙适配器

OBJECT参数说明:

参数类型必填说明successFunction是成功则返回成功初始化信息failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.openBluetoothAdapter({  success: function (res) {    console.log(res)  }})

Bug & Tip

  1. tip: 由于系统的问题,目前仅在 mac 版的开发工具上支持蓝牙调试
  2. tip: 基础库版本 1.1.0 开始支持,低版本需做兼容处理

wx.closeBluetoothAdapter(OBJECT)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

关闭蓝牙模块。调用该方法将断开所有已建立的链接并释放系统资源

OBJECT参数说明:

参数类型必填说明successFunction是成功则返回成功关闭模块信息failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.closeBluetoothAdapter({  success: function (res) {    console.log(res)  }})

wx.getBluetoothAdapterState(OBJECT)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

获取本机蓝牙适配器状态

OBJECT参数说明:

参数类型必填说明successFunction是成功则返回本机蓝牙适配器状态failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数:

参数类型说明discoveringBoolean是否正在搜索设备availableBoolean蓝牙适配器是否可用errMsgString成功:ok,错误:详细信息

示例代码:

wx.getBluetoothAdapterState({  success: function (res) {    console.log(res)  }})

wx.onBluetoothAdapterStateChange(CALLBACK)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

监听蓝牙适配器状态变化事件

CALLBACK参数说明:

参数类型说明availableboolean蓝牙适配器是否可用discoveringboolean蓝牙适配器是否处于搜索状态

示例代码:

wx.onBluetoothAdapterStateChange(function(res) {  console.log(`adapterState changed, now is`, res)})

wx.startBluetoothDevicesDiscovery(OBJECT)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

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

OBJECT参数说明:

参数类型必填说明servicesArray否蓝牙设备主 service 的 uuid 列表allowDuplicatesKeyboolean否是否允许重复上报同一设备, 如果允许重复上报,则onDeviceFound 方法会多次上报同一设备,但是 RSSI 值会有不同intervalinteger否上报设备的间隔,默认为0,意思是找到新设备立即上报,否则根据传入的间隔上报successFunction是成功则返回本机蓝牙适配器状态failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

services参数说明:某些蓝牙设备会广播自己的主 service 的 uuid。如果这里传入该数组,那么根据该 uuid 列表,只搜索有这个主服务的设备。

success返回参数:

参数类型说明errMsgstring成功:ok,错误:详细信息isDiscoveringboolean当前蓝牙适配器是否处于搜索状态

示例代码:

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

wx.stopBluetoothDevicesDiscovery(OBJECT)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

停止搜寻附近的蓝牙外围设备。请在确保找到需要连接的设备后调用该方法停止搜索。

OBJECT参数说明:

参数类型必填说明successFunction是成功则返回本机蓝牙适配器状态failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数:

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

adapterState

蓝牙适配器状态信息

参数类型说明discoveringboolean是否正在搜索设备availableboolean蓝牙适配器是否可用

示例代码:

wx.stopBluetoothDevicesDiscovery({  success: function (res) {    console.log(res)  }})

wx.getBluetoothDevices(OBJECT)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

获取所有已发现的蓝牙设备,包括已经和本机处于连接状态的设备

OBJECT参数说明:

参数类型必填说明successFunction是成功则返回本机蓝牙适配器状态failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数:

参数类型说明devicesArrayuuid 对应的的已连接设备列表errMsgstring成功:ok,错误:详细信息

device 对象

蓝牙设备信息

参数类型说明namestring蓝牙设备名称,某些设备可能没有deviceIdstring用于区分设备的 idRSSIint当前蓝牙设备的信号强度advertisDataArrayBuffer当前蓝牙设备的广播内容(注意:vConsole 无法打印出 ArrayBuffer 类型数据)

示例代码:

wx.getBluetoothDevices({  success: function (res) {    console.log(res)  }})

Bug & Tip

  1. tip: Mac系统可能无法获取advertisDataRSSI,请使用真机调试
  2. tip: 开发者工具和 Android 上获取到的deviceId为设备 MAC 地址,iOS 上则为设备 uuid。因此deviceId不能硬编码到代码中

wx.getConnectedBluetoothDevices(OBJECT)

基础库版本 1.1.0 开始支持,低版本需做兼容处理

根据 uuid 获取处于已连接状态的设备

OBJECT参数说明:

参数类型必填说明servicesArray是蓝牙设备主 service 的 uuid 列表successFunction是成功则返回本机蓝牙适配器状态failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数:

参数类型说明devicesArray搜索到的设备列表errMsgstring成功:ok,错误:详细信息

device对象

蓝牙设备信息

参数类型说明namestring蓝牙设备名称,某些设备可能没有deviceIdstring用于区分设备的 id

示例代码:

wx.getConnectedBluetoothDevices({  success: function (res) {    console.log(res)  }})

Bug & Tip

  1. tip: 开发者工具和 Android 上获取到的deviceId为设备 MAC 地址,iOS 上则为设备 uuid。因此deviceId不能硬编码到代码中
>更多相关文章
24小时热门资讯
24小时回复排行
资讯 | QQ | 安全 | 编程 | 数据库 | 系统 | 网络 | 考试 | 站长 | 关于东联 | 安全雇佣 | 搞笑视频大全 | 微信学院 | 视频课程 |
关于我们 | 联系我们 | 广告服务 | 免责申明 | 作品发布 | 网站地图 | 官方微博 | 技术培训
Copyright © 2007 - 2024 Vm888.Com. All Rights Reserved
粤公网安备 44060402001498号 粤ICP备19097316号 请遵循相关法律法规
');})();