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