// 断开蓝牙
closeBlu() {
const res = new Promise((resolve) => {
uni.closeBLEConnection({
deviceId: this.globalData.deviceId,
success: (e) => {
console.log('断开蓝牙第一步', e,this.globalData.deviceId)
uni.closeBluetoothAdapter({
success: (res) => {
console.log('断开蓝牙第二步', res)
this.globalData.blueStatus = false
this.globalData.currentBlue = ''
this.globalData.BluetoothList = []
resolve(true)
}
})
},
fail: (e) => {
console.log('close failed: ' + JSON.stringify(e));
}
});
})
return res
},
- 发布:2023-07-10 15:43
- 更新:2023-09-13 16:32
- 阅读:631
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows11专业版 22000.2057
HBuilderX类型: 正式
HBuilderX版本号: 3.8.7
手机系统: Android
手机系统版本号: Android 13
手机厂商: 小米
手机机型: 小米12pro
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
连接蓝牙后执行断开api
连接蓝牙后执行断开api
预期结果:
蓝牙与设备断开连接
蓝牙与设备断开连接
实际结果:
api返回断开成功 实际设备蓝牙依旧连接
api返回断开成功 实际设备蓝牙依旧连接
1***@qq.com - 沉默
官网上有注意
请保证尽量成对的调用 createBLEConnection 和 closeBLEConnection 接口。安卓如果多次调用 createBLEConnection 创建连接,有可能导致系统持有同一设备多个连接的实例,导致调用 closeBLEConnection 的时候并不能真正的断开与设备的连接。
蓝牙连接随时可能断开,建议监听 uni.onBLEConnectionStateChange 回调事件,当蓝牙设备断开时按需执行重连操作
若对未连接的设备或已断开连接的设备调用数据读写操作的接口,会返回 10006 错误,建议进行重连操作
https://uniapp.dcloud.net.cn/api/system/ble.html#closebleconnection
v***@foxmail.com (作者)
没解决 后来换成硬件方执行指令 短暂断开
2023-11-02 17:05
c***@intasect.com.cn
回复 v***@foxmail.com: 什么·是硬件方执行指令
2024-06-04 11:12