富贵资源网 Design By www.hznty.com
1.连接蓝牙
(第一次发表博客)
第一步打开蓝牙并搜索附近打印机设备//
startSearch: function() { var that = this wx.openBluetoothAdapter({ success: function(res) { wx.getBluetoothAdapterState({ success: function(res) { if (res.available) { if (res.discovering) { wx.stopBluetoothDevicesDiscovery({ success: function(res) { console.log(res) } }) } that.checkPemission() } else { wx.showModal({ title: '提示', content: '本机蓝牙不可用', }) } }, }) }, fail: function() { wx.showModal({ title: '提示', content: '蓝牙初始化失败,请打开蓝牙', }) } }) }
2.将搜索到的设备列表绑定点击事件并连接
bindViewTap: function(e) { var that = this wx.stopBluetoothDevicesDiscovery({ success: function(res) { console.log(res) }, }) that.setData({ serviceId: 0, writeCharacter: false, readCharacter: false, notifyCharacter: false }) var shebei = e.currentTarget.dataset.title wx.setStorageSync('shebei', shebei) wx.showLoading({ title: '正在连接', }) wx.createBLEConnection({ deviceId: e.currentTarget.dataset.title, success: function(res) { console.log(res) app.BLEInformation.deviceId = e.currentTarget.dataset.title console.log(e.currentTarget.dataset.title) that.getSeviceId() }, fail: function(e) { wx.showModal({ title: '提示', content: '连接失败', }) console.log(e) wx.hideLoading() }, complete: function(e) { console.log(e) } }) }
3.连接成功后保存连接状态
getSeviceId: function() { var that = this var platform = app.BLEInformation.platform console.log(app.BLEInformation.deviceId) wx.getBLEDeviceServices({ deviceId: app.BLEInformation.deviceId, success: function(res) { that.setData({ services: res.services }) that.getCharacteristics() }, fail: function(e) { console.log(e) }, complete: function(e) { console.log(e) } }) } getCharacteristics: function() { var that = this var list = that.data.services var num = that.data.serviceId var write = that.data.writeCharacter var read = that.data.readCharacter var notify = that.data.notifyCharacter wx.getBLEDeviceCharacteristics({ deviceId: app.BLEInformation.deviceId, serviceId: list[num].uuid, success: function(res) { console.log(res) for (var i = 0; i < res.characteristics.length; ++i) { var properties = res.characteristics[i].properties var item = res.characteristics[i].uuid if (!notify) { if (properties.notify) { app.BLEInformation.notifyCharaterId = item app.BLEInformation.notifyServiceId = list[num].uuid notify = true } } if (!write) { if (properties.write) { app.BLEInformation.writeCharaterId = item app.BLEInformation.writeServiceId = list[num].uuid write = true } } if (!read) { if (properties.read) { app.BLEInformation.readCharaterId = item app.BLEInformation.readServiceId = list[num].uuid read = true } } } if (!write || !notify || !read) { num++ that.setData({ writeCharacter: write, readCharacter: read, notifyCharacter: notify, serviceId: num }) if (num == list.length) { wx.showModal({ title: '提示', content: '找不到该读写的特征值', }) } else { that.getCharacteristics() } } else { that.openControl() } }, fail: function(e) { console.log(e) }, complete: function(e) { console.log("write:" + app.BLEInformation.writeCharaterId) console.log("read:" + app.BLEInformation.readCharaterId) console.log("notify:" + app.BLEInformation.notifyCharaterId) } }) } /** * 生命周期函数--监听页面加载 */ onLoad: function(options) { app.BLEInformation.platform = app.getPlatform() }
总结
以上所述是小编给大家介绍的微信小程序蓝牙连接小票打印机实例代码详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
富贵资源网 Design By www.hznty.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
富贵资源网 Design By www.hznty.com
暂无评论...