我的蓝牙低功耗应用程序有时无法连接到我的设备(在线程中描述)时遇到了一些重大问题。
在运行我的应用程序之前,我需要从以前的连接中清除所有存储的数据,据我所知,这只能通过重新启动手机来完成。有没有其他方式,最好是编程方式来做到这一点?
谢谢
我的蓝牙低功耗应用程序有时无法连接到我的设备(在线程中描述)时遇到了一些重大问题。
在运行我的应用程序之前,我需要从以前的连接中清除所有存储的数据,据我所知,这只能通过重新启动手机来完成。有没有其他方式,最好是编程方式来做到这一点?
谢谢
我遇到了同样的问题,并找到了重现它的步骤。
当您将数据传输到外围设备时,它是 100% 可重现的
[peripheral writeValue:x forCharacteristic:y type:CBCharacteristicWriteWithoutResponse];
而外围设备超出范围并断开连接。发生这种情况后,BLE 设备不再返回服务,只有重新启动才能解决问题。如果外围设备超出范围并在没有向其传输数据的情况下返回,或者如果
[peripheral writeValue:x forCharacteristic:y type:CBCharacteristicWriteWithResponse];
用来...
其他断开连接似乎不会影响它,例如关闭外围设备并在范围内重新启动外围设备,即使在传输数据时也是如此......
我知道这不是答案,但由于某种原因我似乎无法发表评论。
希望这有助于调试。