近期做了个通过蓝牙完成水电缴费需求;项目涉及蓝牙的部分功能是:通过蓝牙读水表基本信息及写入相关的命令来控制水表的开关阀、金额等;这里主要说一下小程序蓝牙功能的连接且通过蓝牙发送命令过程中遇到的坑;希望对各位以后开发此功能有所帮助;
大概步骤及蓝牙指令流程
1、wx.openBluetoothAdapter(Object object) 初始化蓝牙模块
注:在初始化蓝牙模块之前:停止搜寻附近的蓝牙外围设备及关闭蓝牙模块;
防止第一次操作未完成
断开所有已建立的连接并释放系统资源
wx.stopBluetoothDevicesDiscovery(Object object) 停止搜寻附近的蓝牙外围设备
wx.closeBluetoothAdapter(Object object) 关闭蓝牙模块
2、wx.startBluetoothDevicesDiscovery(Object object) 开始搜寻附近的蓝牙外围设备
注:同时,监听寻找到新设备的事件及监听蓝牙适配器状态变化事件,得到你需要的蓝牙设备名称(某些设备可能没有)及用于区分设备的 id等参数;
wx.onBluetoothDeviceFound(function callback) 监听寻找到新设备的事件
wx.onBluetoothAdapterStateChange(function callback) 监听蓝牙适配器状态变化事件
3、wx.creat