我目前正在制作原型,试图在后台模式下收听蓝牙LE通知。
我正在使用此库https://github.com/innoveit/react-native-ble-manager与BLE设备进行交互。我们的想法是能够在外围设备上注册BLE服务,并在后台获得有关特征变化的通知。
cat < foo.txt
根据我的理解,使用此代码,每次BLE设备发生特性更改时,即使在后台模式下该应用也会收到通知,并且会触发const deviceId = '8A:B0:C3:BA:11:55';
const service = '0ce0';
const characteristic = '0ce2';
componentDidMount() {
BleManager.start({
showAlert: false
});
}
onButtonPress() {
BleManager.connect(deviceId).then(() => {
BleManager.retrieveServices(deviceId).then(() => {
BleManager.startNotification(deviceId, service, characteristic);
});
});
}
handleUpdateValueForCharacteristic(data) {
console.log('characteristic update', data);
}
this.handlerUpdate = bleManagerEmitter.addListener(
'BleManagerDidUpdateValueForCharacteristic',
this.handleUpdateValueForCharacteristic
);
。
是否可以让多个应用在同一个BLE设备上侦听相同的服务和特性?
在背景和睡眠模式下,所有这些都能正常工作吗?