小程序
小游戏
企业微信
微信支付
扫描小程序码分享
wx.onBluetoothAdapterStateChange这个监听里面我是只想监听蓝牙是否打开,不需要监听到蓝牙是否处于搜索状态,请问有什么方法?
4 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
是有这毛病,发愁,监听手机蓝牙设置开关挺不错,但是同时还监听了探索状态,开始探索和探索结束都有这个回调,写判断也绕不开这个问题,光判断 available 不行,加上 discovering 也不行。discovering 为 true 或 false ,available 都肯定为 true
// 是否初始化成功 var initSuccess = false; wx.openBluetoothAdapter({ success: res => { initSuccess = true; }, fail: error => { initSuccess = false; } }) wx.onBluetoothAdapterStateChange(function (res) { console.log('adapterState changed, now is', res) // 适配器打开 if (res.available && !res.discovering && !initSuccess) { console.log('deviceManage 手机蓝牙打开') } // 适配器关闭 if (!res.available) { console.log('deviceManage 手机蓝牙关闭') initSuccess = false } // 适配器打开并且处于搜索状态 if (res.available && res.discovering) { console.log('deviceManage 处于搜索状态') } // 适配器打开并且处于停止搜索状态 if (!res.discovering && initSuccess) { console.log('deviceManage 停止搜索状态') } })
我都服了,总算给闭环了。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我关心蓝牙, 都走一遍看看!
请问有人解决了吗?这个接口为啥要监听搜索状态啊,搞的写个逻辑一直循环调了
你好,可以试下用以下的api看看:https://developers.weixin.qq.com/miniprogram/dev/api/device/bluetooth-ble/wx.onBLEConnectionStateChange.html.
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
是有这毛病,发愁,监听手机蓝牙设置开关挺不错,但是同时还监听了探索状态,开始探索和探索结束都有这个回调,写判断也绕不开这个问题,光判断 available 不行,加上 discovering 也不行。discovering 为 true 或 false ,available 都肯定为 true
// 是否初始化成功 var initSuccess = false; wx.openBluetoothAdapter({ success: res => { initSuccess = true; }, fail: error => { initSuccess = false; } }) wx.onBluetoothAdapterStateChange(function (res) { console.log('adapterState changed, now is', res) // 适配器打开 if (res.available && !res.discovering && !initSuccess) { console.log('deviceManage 手机蓝牙打开') } // 适配器关闭 if (!res.available) { console.log('deviceManage 手机蓝牙关闭') initSuccess = false } // 适配器打开并且处于搜索状态 if (res.available && res.discovering) { console.log('deviceManage 处于搜索状态') } // 适配器打开并且处于停止搜索状态 if (!res.discovering && initSuccess) { console.log('deviceManage 停止搜索状态') } })
我都服了,总算给闭环了。
我关心蓝牙, 都走一遍看看!
请问有人解决了吗?这个接口为啥要监听搜索状态啊,搞的写个逻辑一直循环调了
你好,可以试下用以下的api看看:https://developers.weixin.qq.com/miniprogram/dev/api/device/bluetooth-ble/wx.onBLEConnectionStateChange.html.