我在这里执行此代码
self.cloudSightQuery = [[CloudSightQuery alloc] initWithImage:imageData
atLocation:CGPointZero
withDelegate:self
atPlacemark:nil
withDeviceId:@""];
self.cloudSightQuery.queryDelegate = self;
[self.cloudSightQuery start];
但是有时它由于以下原因而崩溃
如何捕获此错误并向用户显示响应,而不是应用程序崩溃?
最佳答案
你看过回溯了吗?您可以使用调试器(在XCode中)显示回溯。
错误本身表明有一个无效的方法调用[ImageViewController cloudSightQueryDidFail:withError:]
发送到该实例(0x100514c40)。考虑到我们正在处理委托(delegate)模式,似乎该方法从未在您的父类中定义,并且协议(protocol)需要它。您将要确保先定义该方法,然后它应该起作用。
TL; DR-您需要将此方法添加到您的委托(delegate)人(自己)中:
- (void)cloudSightQueryDidFail:(CloudSightQuery *)query withError:(NSError *)error
{
// TODO: Fill in your logic here
NSLog(@"query: %@, experienced an error: %@", query, error);
}
您可以在以下位置查看此示例:https://github.com/cloudsight/cloudsight-objc/tree/master/Example-objc
关于ios - iOS Cloudsight错误响应崩溃的应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43130597/