微信小程序蓝牙模块遇到的坑

本文记录了在微信小程序中使用蓝牙模块遇到的问题及解决方案,详细介绍了从初始化蓝牙适配器到监听蓝牙设备数据变化的完整流程。特别指出在安卓系统中,低版本可能无法正常获取数据,而在iOS系统上表现良好。提醒开发者注意ArrayBuffer在数据传输中的使用,并提供了获取蓝牙设备数据的示例代码。
摘要由CSDN通过智能技术生成

今天第一次写博客,关于微信小程序蓝牙这一块,因为公司项目需要搞一个蓝牙的小程序,而小程序蓝牙模块也是刚出不久,遇到的坑很难解决,经过自己的摸索以及同事的帮忙,终于可以实现获取到蓝牙的数据了。官网:https://mp.weixin.qq.com/debug/wxadoc/dev/api/bluetooth.html#wxreadblecharacteristicvalueobject
参考文章:http://blog.csdn.net/u010046908/article/details/68924339
这篇文章我不得不说一下,按照这样写,安卓系统是没办法拿到数据的,也就是wx.notifyBLECharacteristicValueChanged这个接口是进不去的。IOS就没试过,因为IOS我没用他的代码,自己写的,也能拿到数据。

测试手机:
手机名称:iPhone 5s
版本:10.3.1
微信版本:6.5.7
蓝牙:4.0

手机名称:iPhone 6
版本:10.3.1
微信版本:6.5.7
蓝牙:4.0

手机名称:iPhone 6s
版本:10.3.1
微信版本:6.5.7
蓝牙:4.2

手机名称:红米note
安卓版本:Android 4.4.4
微信版本:6.5.7
蓝牙:4.0

手机名称:小米mix
安卓版本:Android 6.0.1
微信版本:6.5.7
蓝牙:4.2

首先说下流程:
openBluetoothAdapter(初始化蓝牙适配器)—》 wx.startBluetoothDevicesDiscovery(开始搜寻附近的蓝牙外围设备)——》wx.getBluetoothDevices(获取所有已发现的蓝牙设备)——》wx.createBLEConnection(连接设备)——》wx.getBLEDeviceServices(获取蓝牙设备所有 service(服务))——》wx.getBLEDeviceCharacteristics(获取notify 特征值)——》wx.notifyBLECharacteristicValueChange(开启notify)——》 wx.onBLECharacteristicValueChange(监听低功耗蓝牙设备的特征值变化)——》wx.getBLEDeviceCharacteristics(获取write特征 )——》wx.writeBLECharacteristicValue(发送 数据到设备中࿰

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值