- 当前 Bug 的表现(可附上截图)
现在主要是安卓收不到特征值变化的值 ,苹果一直是正常,我安桌手机是最新的oppo reno 10倍变焦版
特征值属性:
properties: {read: false, write: true, notify: true, indicate: false}
我的方法:
wx.notifyBLECharacteristicValueChange({
deviceId,
serviceId,
characteristicId: item.uuid,
state: true,
type: ‘notification’})
我就算加type:notification也没起作用
网上有人说,在安卓write指令后,一定要再读一次特征值,要不然onBLECharacteristicValueChange监听不了变化,但我这个特征值是不支持read属性的,所以这种方法对我来说没用。
- 预期表现
通过我多次测试,发现writeBLECharacteristicValue其实是成功了的,通过硬件响应知道的,并且硬件已收到指令,特征值一直在变(我通过苹果设备验证),我是连接的一个心电图检测的硬件设备,当发送一个开始检测命令后,设备会按秒来改变特征值,在IOS设备下一切正常我是能监听到值的改变,但在安桌设备下onBLECharacteristicValueChange方法都没进,我有真机比较苹果和安桌,苹果和安桌最大的差别是苹果在特征值变化前它会进入internal/async_hooks.js中的emitHook方法,我也不知道这个是干嘛用的,但安卓并不会进入这个方法。(write和监听的service不一样)
- 复现路径
因为你们没有我这种设备,你们没办法复现
- 提供一个最简复现 Demo
同上