先前定义的 BLE 服务即使在被“删除”后仍然存在

问题描述

我正在使用 BLE 将数据从 Arduino Nano 33 BLE 发送到 Android 手机。我已经成功地使用自定义服务和特性传输数据。但是,我最近尝试减少我正在使用的特征数量,并注意到即使在更改了我定义每个特征的 Arduino 源代码之后,我的 Android 应用程序和其他应用程序(如 nRF Connect)仍然可以找到以前定义的特征.

我已经使用下面的 Arduino 代码定义了我的服务和特性。将部分特征注释掉并重新编译后,继续被其他中心设备发现。

const char* uuidOfService = "00001101-0000-1000-8000-00805f9b34fb";
const char* uuidOfRxChar = "00001142-0000-1000-8000-00805f9b34fb";
const char* uuidOfTxChar = "00001143-0000-1000-8000-00805f9b34fb";
//const char* uuidOfaccXChar = "00001144-0000-1000-8000-00805f9b34fb";
//const char* uuidOfaccYChar = "00001145-0000-1000-8000-00805f9b34fb";
//const char* uuidOfaccZChar = "00001146-0000-1000-8000-00805f9b34fb";
const char* uuidOfAccChar = "00001144-0000-1000-8000-00805f9b34fb";

BLEService dataService(uuidOfService);
BLECharacteristic rxChar(uuidOfRxChar,BLEWriteWithoutResponse | BLEWrite,BLE_BUFFER_SIZE);
BLECharacteristic txChar(uuidOfTxChar,BLERead | BLENotify | BLEbroadcast,BLE_BUFFER_SIZE);
//BLEFloatCharacteristic accXChar(uuidOfaccXChar,BLERead | BLENotify | BLEbroadcast);
//BLEFloatCharacteristic accYChar(uuidOfaccYChar,BLERead | BLENotify | BLEbroadcast);
//BLEFloatCharacteristic accZChar(uuidOfaccZChar,BLERead | BLENotify | BLEbroadcast);
BLECharacteristic accChar(uuidOfAccChar,BLE_BUFFER_SIZE);

是否存在某些特征 UUID 的属性即使在从代码删除后仍继续与服务相关联?

感谢您的澄清。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)