前面一共13章节分别介绍了小程序搜索周边蓝牙设备、发现设备、获取设备信息、连接设备、向设备发送指令数据、接收设备返回响应数据,但是当我们不需要再操作蓝牙设备的时候就需要小程序断开和蓝牙设备的连接,本章节将介绍小程序断开蓝牙设备的方法使用。首先看官方文档:
wx.closeBLEConnection(OBJECT)
断开与低功耗蓝牙设备的连接
OBJECT参数说明:
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
deviceId | String | 是 | 蓝牙设备 id,参考 getDevices 接口 |
success | Function | 是 | 成功则返回本机蓝牙适配器状态 |
fail | Function | 否 | 接口调用失败的回调函数 |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
success返回参数:
参数 | 类型 | 说明 |
---|---|---|
errMsg | String | 成功:ok,错误:详细信息 |
示例代码:
wx.closeBLEConnection({ deviceId:deviceId, success: function (res) { console.log(res) } })
根据官方文档编写实现代码
根据官方文档,断开蓝牙设备的连接只需要一个参数,那就是设备的deviceId,此参数的获取可参考本系列教程第5章节和第6章节,尤其是第6章节,我们把连接的蓝牙设备deviceId设置成了全局变量值。
1,打开微信小程序开发工具,编写lanya.wxml 实际上此页面类似于html页面一样,在此页面添加一行实现断开蓝牙设备连接的按钮
<button type="primary" class="button" bindtap="lanya0">0断开蓝牙设备连接</button>
如上述代码,按钮绑定了一个名为lanya0的js函数
2、打开lanya.js文件,lanya0函数实现wx.createBLEConnection(OBJECT)接口函数的代码如下:
//断开设备连接 V型知识库原创 www.vxzsk.com lanya0: function () { var that = this; wx.closeBLEConnection({ deviceId: that.data.connectedDeviceId, success: function (res) { that.setData({ connectedDeviceId: "", }) console.log('断开蓝牙设备连接返回:'+res.errMsg) } }) }
上述第5行代码便是此接口的唯一参数设备的deviceId。由于此接口实现比较简单,故不在晒出效果。
至此,微信小程序蓝牙开发基本结束,但是有个很大的问题,上述14个章节介绍的仅仅是案例demo,我们实际业务开发中,指令数据不可能只有仅仅不超过20个字节,实际开发业务中,指令数据可能上百上千个字节,那么用上述案例一次性发送,我们发现设备毫无响应,小程序接收不到蓝牙设备的数据,那么怎么办呢,其实很简单,我们把这上百上千个字节指令数据分包发送即可,具体如何分包发送,请持续关注下一章节!
感觉本站内容不错,读后有收获?小额赞助,鼓励网站分享出更好的教程