readBLECharacteristicValue(id) {
uni.readBLECharacteristicValue({
deviceId:id,
serviceId:this.globalData.serviceuuid,
characteristicId:this.globalData.characuuid,
success: res => {
console.log('读取设备数据值成功',res);
},
fail:e=> {
console.log('读取设备数据值失败,错误码:' + e.errCode);
}
});
},
onBLECharacteristicValueChange() {
// 必须在这里的回调才能获取
uni.onBLECharacteristicValueChange(characteristic => {
console.log('监听低功耗蓝牙设备的特征值变化事件成功',characteristic);
console.log(this.ab2hex(characteristic.value));
uni.showModal({
content:'读取的值'+this.ab2hex(characteristic.value)
});
});
},
/**
* 启用低功耗蓝牙设备特征值变化时的 notify 功能,
*/
notifyBLECharacteristicValueChange(id) {
uni.notifyBLECharacteristicValueChange({
state: true, // 启用 notify 功能
// 这里的 deviceId 需要已经通过 createBLEConnection 与对应设备建立链接
deviceId:id,
serviceId:this.globalData.serviceuuid,
characteristicId:this.globalData.characuuid,
success:res=> {
console.log(' 启动notify成功' + res.errMsg);
this.onBLECharacteristicValueChange();
},
fail:res=>{
console.log('启动notify失败');
}
});
},
ab2hex(buffer) {
const hexArr = Array.prototype.map.call(
new Uint8Array(buffer),
function (bit) {
return ('00' + bit.toString(16)).slice(-2)
}
)
return hexArr.join('')
}
}

1***@qq.com
- 发布:2021-08-16 18:04
- 更新:2021-08-16 18:04
- 阅读:1087
在小程序中 notifyBLECharacteristicValueChange 监听显示成功读取不到数值
分类:HBuilderX
