我有一个小型iOS应用程序,连接到connectBlue生成的cB-OLP425i-26-A。 我有它显示模块的电池以及其他东西。
当我离模块太远时,它断开连接,我收到以下错误
CBUUID:E2ED3400-5650-3314-C2A8-C93508AFA475,错误:连接意外超时。
我想让应用程序继续扫描外设并在范围内重新连接。我似乎无法做到这一点。我试过插入一个if / else语句,好像模块没有连接,文本字段显示为“Disconnected”,如果连接“已连接”。然后我说如果文本字段显示“Disconnected”应用程序应扫描。这没用。
我也在断开[view setNeedsDisplay]时放入,然后将所有内容放入viewWillAppear动画中仍然没有运气。
任何人都可以解释我应该做什么或我做错了什么?
由于
[self stopScan] in didRetrievePeripherals
和
[central stopScan] in didConnectPeripheral
添加不重新扫描或重新连接
然后添加
[self startScan] in didDisconnectPeripheral
重新扫描并重新连接,但由于
而导致应用崩溃- (void)startScan
{NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:FALSE], CBCentralManagerScanOptionAllowDuplicatesKey, nil];
[manager scanForPeripheralsWithServices:self.dicoveredPeripherals options:options];
}
和
和调试器中的此错误消息
由于未捕获的异常'无效对象'而终止应用程序,原因:'参数E2ED3400-5650-3314-C2A8-C93508AFA475,名称=“OBP425-0B32”,IsConnected = NO>无效'
当应用程序断开连接时,这是整个错误
断开外设:E2ED3400-5650-3314-C2A8-C93508AFA475,名称=“OBP425-0B32”,IsConnected = NO> with error =连接意外超时。
有人可以帮助我吗?