打开蓝牙适配器,扫描蓝牙,扫描到固定蓝牙名称设备(周围只有一个该设备)停止扫描,连接固定名称蓝牙,监听蓝牙回传的数据,断开蓝牙,关闭蓝牙适配器。重复前面的步骤

- 发布:2025-05-21 16:23
- 更新:2025-06-04 11:42
- 阅读:69
【报Bug】onBluetoothDeviceFound多次调用后会重复返回同一个设备,及onBLECharacteristicValueChange也会重复回调
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win11
HBuilderX类型: 正式
HBuilderX版本号: 4.66
手机系统: Android
手机系统版本号: Android 14
手机厂商: 小米
手机机型: Redmi Pad SE
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
onBluetoothDeviceFound同一个设备应该只返回一个,连接的同一个设备同一条数据onBLECharacteristicValueChange应该也只需回调一次。
onBluetoothDeviceFound同一个设备应该只返回一个,连接的同一个设备同一条数据onBLECharacteristicValueChange应该也只需回调一次。
实际结果:
onBluetoothDeviceFound同一个设备应该只返回多个,连接的同一个设备同一条数据onBLECharacteristicValueChange应该也只需回调多次。重新扫描连接的次数越多onBluetoothDeviceFound返回的重复设备就越多,onBLECharacteristicValueChange回调的次数也越多。
onBluetoothDeviceFound同一个设备应该只返回多个,连接的同一个设备同一条数据onBLECharacteristicValueChange应该也只需回调多次。重新扫描连接的次数越多onBluetoothDeviceFound返回的重复设备就越多,onBLECharacteristicValueChange回调的次数也越多。
bug描述:
第一次扫描蓝牙连接后能正常收到数据,断开回到应用主页点击按钮重新开始扫描设备连接,onBluetoothDeviceFound返回的就会有重复设备。onBLECharacteristicValueChange也会回调多次
1 个回复
3***@qq.com (作者)
代码逻辑问题,uni.onBLECharacteristicValueChange只调用一次就可以了,不用每次在uni.notifyBLECharacteristicValueChange回调里面调用。uni.notifyBLECharacteristicValueChange调用成功后uni.onBLECharacteristicValueChange就会有回调。