如果拒绝,可以再次提醒用户打开权限,使用这个接口wx.openSetting就行了!
openBluetoothAdapter弹出是否允许使用蓝牙后点拒绝,下次为啥不会再次申请了?[图片] 点拒绝后再次点击调用openBluetoothAdapter,不会再提示 会直接调用失败,如何解决
2023-11-07试试这个,外层套个 var that = this; onBLEConnectionStateChange(){ var that = this; wx.onBLEConnectionStateChange(function(res) { console.log(that.data.reConnected) }) }
wx.onBLEConnectionStateChange获取不到数据更新?连接蓝牙后,监听蓝牙连接状态的改变事件 返回上一页,再进入蓝牙连接页面,手动关闭蓝牙连接 如果在第一次进入连接页面,没有返回上一页,手动断开蓝牙连接,在wx.onBLEConnectionStateChange方法是可以获取到更新的值 wx.onBLEConnectionStateChange()方法在第一次进入页面执行一次,返回上一页,再进入蓝牙连接页面不会在调用wx.onBLEConnectionStateChange()方法,手动断开蓝牙连接,怎么解决在wx.onBLEConnectionStateChange方法里面不能获取this.data数据更新问题,this? 关键点是在进入蓝牙连接页面不执行wx.onBLEConnectionStateChange方法监听了,不能正确找到页面this问题? Page({ data: { reConnected: true //默认值 }, // 监听蓝牙状态改变 onBLEConnectionStateChange() { wx.onBLEConnectionStateChange(res => { this.setData({ //测试发现页面数据也不会更新 }) console.log(this.data.reConnected) //true 输出没有改变,导致执行了重新连接 if (!res.connected && this.data.reConnected) { //重新连接逻辑,断开连接和this.data.reConnected状态是重新连接才执行 } }) }, //断开蓝牙连接 closeBLEConnection() { this.data.reConnected = false //改变值,不重新连接状态 wx.closeBLEConnection({ deviceId, success: res => { console.log(res, '断开蓝牙连接成功') }, fail: err => { console.log(err, '断开蓝牙连接失败') } }) } })
2023-10-31