在uni-app微信小程序连接蓝牙过程中,硬件设备同一个服务下存在两个相同uuid的特征值

在uni-app微信小程序连接蓝牙过程中,硬件设备同一个服务下存在两个相同uuid的特征值

2 回复

小程序的问题看起来是微信小程序官方的问题,可以反馈到微信社区

更多关于在uni-app微信小程序连接蓝牙过程中,硬件设备同一个服务下存在两个相同uuid的特征值的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在uni-app微信小程序中,如果蓝牙设备的同一服务下存在两个相同UUID的特征值,这通常是由于蓝牙硬件设计不规范导致的。根据蓝牙规范,同一服务下的特征值UUID应该是唯一的。

遇到这种情况时,建议采取以下处理方案:

  1. 通过特征值的properties属性来区分,虽然UUID相同,但特征值的读写属性可能不同
  2. 检查特征值的handle句柄,每个特征值都有唯一的handle
  3. 在uni.writeBLECharacteristicValue写入时,通过不同的handle来区分要操作的特征值

示例代码:

// 获取特征值列表后
const characteristics = res.characteristics;
characteristics.forEach(char => {
    if(char.uuid === '相同的UUID') {
        // 通过properties或handle来区分
        console.log('特征值属性:', char.properties);
        console.log('特征值句柄:', char.handle);
    }
});
回到顶部