iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 核心数据吞噬未捕获的异常大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我遇到了令人不安/令人困惑的错误.核心数据似乎吞噬了自己的例外!当使用(超级有用) CoreDataHelper时,我编写了一个格式错误提取,导致“未实现的sql生成谓词”异常.这部分很简单,真正奇怪的是这个异常被捕获到某个地方并被吞没,这意味着我的代码获取之后跳过了方法的其余部分并返回到没有任何控制台消息的主循环.相当真气.

最终我能够在@try语句中包装实际的获取请求并@catch异常:

@try{
fetchResults = [managedObjectContext executeFetchrequest:request error:&error];
    NSLog(@"fetch successful");
}
@catch (NSException* exception) {
    NSLog(@"caught exception!\n\n%@\n\n%@\n\n%@",[exception name],[exception reason],[exception userInfo]);
}

这让我弄清楚它是什么,但它仍然没有意义,它会被抓到某个地方.我没有在我的代码中的其他任何地方使用@ try / @ catch来测试它.

我还尝试创建一个空白的Core Data项目,并使用COreDataHelper而不使用@ try / @ catch语句尝试隔离问题,项目中没有任何其他内容,CoreDataHelper可以正常工作,返回:

CoreDataTest[1044:11603] *** TerminaTing app due to uncaught exception   'NSInvalidArgumentexception',reason: 'Unimplemented sql generation for preDicate ("test" LIKE attributE)'

所以我的项目中有些东西正在捕捉并忽略这个异常,但除非我能在不使用@catch的情况下以某种方式做到这一点,否则不是我.

会是什么呢?!

解决方法

得到它了!

我正在使用具有自己的库的外部附件(Linea Pro-4条形码扫描仪/ MSR),即使在最新版本的框架中也是如此.

我设置了我的空白测试项目,以便在运行相同的获取请求之前连接到附件,并且bam!吞下异常!

大佬总结

以上是大佬教程为你收集整理的ios – 核心数据吞噬未捕获的异常全部内容,希望文章能够帮你解决ios – 核心数据吞噬未捕获的异常所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。