初始化数据
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了呀。
求大神指点。
好的谢谢,我加您微信了。
你好,如果可以请麻烦提供一下小程序的appId,或者觉得不方便的话麻烦加一下我的微信 qianyeddz,我们一起来看一下这个问题
图二补充:我的程序每次进入小程序蓝牙功能页面,都会进行蓝牙初始化操作
onLoad:function(options){
var that = this
wx.openBluetoothAdapter({
success: function (res) {
console.log('初始化蓝牙适配器 成功', res)
// 开始搜索
},
fail: function (res) {
console.log('初始化蓝牙适配器 失败', res)
}
})
......
图一为:先打开手机蓝牙,再进入小程序,只要不手动关闭手机蓝牙,怎么操作都正常。
图二为:手机蓝牙处于关闭状态,进入小程序蓝牙功能页面,打开手机蓝牙,初始化,搜索连接,可以连接成功connecting值也正常。此时点击左上角返回,我调用了关闭连接,然后再进入蓝牙页面,初始化,搜索连接,也可以连接成功,测试接收发送数据也可以。但是此时点击查看connecting变成了fasle。
因为我要根据connecting的值来渲染界面提示,不知道connecting什么时候变成false的。因为我用日志跟踪connecting程序运行到最后connecting仍然是true。
你好,请问方便提供一下小程序的appId以及vConsole的截图么?
如果方便请问能提供更详细的业务代码么?这样方便定位问题