1

我正在尝试使用 Core Bluetooth 连接两部 iPhone。一个运行外围设备,另一个运行中央设备。似乎两个设备已连接。并且每个方法都在典型的控制流中被调用,直到peripheralManager:central:didSubscribeToCharacteristic: 在外围端peripheral: didUpdateValueForCharacteristic: error:没有被调用并且在中心端没有被调用。但是,如果我称readValueForCharacteristic:它有效并获取第一个值,但它似乎没有注册通知,我们在 updateValueForCharacteristic: 方法中得到“未知错误 2”。我已经浏览了我能找到的所有示例代码(心脏监视器、名片等),我的代码完全相同,但我无法让它工作。

有人对问题可能有任何想法吗?

4

1 回答 1

2

我不久前解决了这个问题,但我想我会发布一个解决方案,因为它可能对未来的人们有用......这个问题的解决方案与蓝牙缓存有关。基本上,问题是某些东西缓存不正确......我重新启动了我的手机,它清除了 BLE 缓存,并对我正在测试它的手机做了同样的事情,瞧它工作了。我建议如果人们有这些类型的 BLE 问题(特别是如果您将手机注册为外围设备和类似代码的中心),您可以通过重新启动来清除缓存!

于 2013-08-01T21:44:25.043 回答