我正在使用蓝牙设备,我需要详细说明:
它是连续完成并且完美运行,除了几分钟后我开始收到奇怪的结果,因为peripheral:didDiscoverServices:
给了我这些日志:
Peripheral state: 2
Error: Error Domain=CBErrorDomain Code=3 "The specified device is not connected." UserInfo={NSLocalizedDescription=The specified device is not connected.}
用于获取日志的代码:
- (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error {
NSLog(@"Peripheral state: %li", (long)peripheral.stat);
NSLog(@"Error: %@", error);
}
我尝试检查竞争条件,但所有回调都在同一队列上接收,只有1个操作处于活动状态(下一个操作在成功断开连接后启动)。
阅读the documentation,如果出现问题,可能会收到错误,但外围设备如何处于已连接和未连接状态在同一时间?
我的想法:
感谢您的帮助!