初始化数据
data: {
connecting:false
},
…
tapLog: function(){
console.log(‘tap connecting’,that.data.connecting)
},
…
wx.createBLEConnection({
deviceId: that.data.deviceId,
success: function (res) {
console.log(‘连接蓝牙设备 成功’,res)
that.setData({
connecting: true
})
console.log(‘run connecting’,that.data.connecting)
…
onHide:function(){
wx.closeBLEConnection({
deviceId: that.data.deviceId,
success: function (res) {
console.log(‘断开成功’, res)
}
})
},
onUnload:function(){
wx.closeBLEConnection({
deviceId: that.data.deviceId,
success: function (res) {
console.log(‘断开成功’, res)
}
})
}
…
问题描述(苹果手机):
当手机蓝牙功能打开的时候,进入小程序导航页,再点击按钮进入蓝牙功能页,可以正常连接;
从日志看 run connecting为true,tap connecting为true,运行正常。
当手机蓝牙功能关闭的时候,进入小程序导航页,再点击按钮进入蓝牙功能页,此时打开手机蓝牙功能,搜索连接,也可以正常连接;
此时按微信左上角的返回到导航页,再点击进入蓝牙功能页,搜索连接都成功了,测试也可以收发消息。
但是从日志看 run connecting为true,tap connecting为false,即此时数据connecting确实是不知道什么时候变成了false,明明在连接蓝牙设备成功的时候赋值为true了呀。
求大神指点。
图一为:先打开手机蓝牙,再进入小程序,只要不手动关闭手机蓝牙,怎么操作都正常。
图二为:手机蓝牙处于关闭状态,进入小程序蓝牙功能页面,打开手机蓝牙,初始化,搜索连接,可以连接成功connecting值也正常。此时点击左上角返回,我调用了关闭连接,然后再进入蓝牙页面,初始化,搜索连接,也可以连接成功,测试接收发送数据也可以。但是此时点击查看connecting变成了fasle。
因为我要根据connecting的值来渲染界面提示,不知道connecting什么时候变成false的。因为我用日志跟踪connecting程序运行到最后connecting仍然是true。