HarmonyOS 鸿蒙Next 5.1/6.0支持BLE低功耗蓝牙设备的特征notify和indicate时的值为true吗

HarmonyOS 鸿蒙Next 5.1/6.0支持BLE低功耗蓝牙设备的特征notify和indicate时的值为true吗 目前鸿蒙版微信在使用getBLECharacteristic后notify=false,导致执行 notifyBLECharacteristicValueChange提示不支持10007

鸿蒙5.0/5.1版本小程序在与BLE蓝牙设备通信时,特征值的notify和indicate值都是false,这个在安卓或iOS上大部分是true的情况相比,确认下是否是未适配问题?

wx.notifyBLECharacteristicValueChange({ state: true, deviceId: that.data.deviceId, serviceId: that.data.services[0].uuid, characteristicId: that.data.characteristics[1].uuid, success: function (res) { //发送指令 wx.hideLoading() that.send(that); },


更多关于HarmonyOS 鸿蒙Next 5.1/6.0支持BLE低功耗蓝牙设备的特征notify和indicate时的值为true吗的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

开发者您好,建议到微信开放社区交流解决。

更多关于HarmonyOS 鸿蒙Next 5.1/6.0支持BLE低功耗蓝牙设备的特征notify和indicate时的值为true吗的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


安卓跟IOS的微信已经很成熟了,但是鸿蒙版的适配相对安卓苹果来说还没那么成熟,所以这类问题还是建议到微信开放社区里进行反馈~

在HarmonyOS Next 5.1/6.0中,BLE低功耗蓝牙设备支持特征值的notify和indicate属性。当设备特征具备notify或indicate权限时,对应的属性值可设为true。系统通过GATT协议实现数据通信,应用可通过鸿蒙蓝牙API监听特征值变化并接收设备推送的数据。具体实现需调用鸿蒙的蓝牙服务接口进行特征订阅和数据读写操作。

在HarmonyOS Next中,BLE低功耗蓝牙设备的特征notify和indicate属性值取决于设备服务特征的实际配置。从代码示例看,notifyBLECharacteristicValueChange调用返回错误10007,表明当前特征不支持notify操作。这通常是因为:

  1. 设备特征未正确配置notify/indicate属性
  2. 需要先执行setBLECharacteristicValueChange启用通知
  3. 部分设备需要先写入CCC描述符(0x2902)启用通知

建议检查:

  • 使用getBLEDeviceServices和getBLECharacteristics确认特征属性
  • 确保特征支持notify/indicate(properties字段应包含对应标志)
  • 按顺序执行:发现服务→发现特征→启用通知→监听变化

HarmonyOS Next的BLE实现与Android/iOS存在底层差异,notify属性为false时需通过完整流程激活通知功能。

回到顶部