我的 iOS 应用程序在 iOS 5 和 iOS 6 上运行,但专注于 6 的功能。我最近尝试在 iOS 5.1 模拟器(基础 SDK 为 5.0)中测试我的应用程序,它似乎工作正常,直到我点击一个按钮显示具有不同类的新视图控制器。此时它崩溃了,我在输出日志中只剩下这个:
objc[3063]: EXCEPTIONS: throwing 0x9e85510 (object 0x9e84780, a NSException)
objc[3063]: EXCEPTIONS: searching through frame [ip=0x6d6a19 sp=0xbfffe020] for exception 0x9e854f0
objc[3063]: EXCEPTIONS: searching through frame [ip=0x223dd83 sp=0xbffff200] for exception 0x9e854f0
objc[3063]: EXCEPTIONS: unwinding through frame [ip=0x6d6a19 sp=0xbfffe020] for exception 0x9e854f0
objc[3063]: EXCEPTIONS: unwinding through frame [ip=0x223dd83 sp=0xbffff200] for exception 0x9e854f0
objc[3063]: EXCEPTIONS: handling exception 0x9e854f0 at 0x223de16
objc[3063]: EXCEPTIONS: rethrowing current exception
objc[3063]: EXCEPTIONS: searching through frame [ip=0x223dddf sp=0xbffff200] for exception 0x9e854f0
objc[3063]: EXCEPTIONS: terminating
objc[3063]: EXCEPTIONS: searching through frame [ip=0x158eeed sp=0xbffff190] for exception 0x9e854f0
objc[3063]: EXCEPTIONS: catch(id)
objc[3063]: EXCEPTIONS: unwinding through frame [ip=0x158eeed sp=0xbffff190] for exception 0x9e854f0
objc[3063]: EXCEPTIONS: handling exception 0x9e854f0 at 0x158eeff
就是这样。我还在正在加载的类的标头和实现中设置了断点,并且没有一个断点被命中,这意味着应用程序在加载视图之前崩溃了。
我从来没有见过这样的事情,但是我做了一些研究,谷歌发现了一些与 NSArrays 和 NSPredicate 相关的东西(我的班级确实有),但我排除了这些解决方案,因为视图从未加载 - 那么如何尚未分配/创建的 NSArray 会导致我的应用程序崩溃吗?
任何提示,答案,帮助将不胜感激!
编辑:
我的项目使用:
- 故事板
- Xcode 4.5
- 弧
- 基础 SDK 为 iOS 5.0
没有额外的错误日志、调试消息等。以上是我得到的全部。我还尝试@try / @catch
在某些我认为可能有问题的语句周围使用条件,但它们要么从未被调用,要么没有引发异常。
我的(id)init
方法也从未被调用。
我开始认为这又是那些奇怪的 Xcode 4 编译器问题之一......
编辑:我还确保禁用自动布局(尽管我不确定这是否是禁用它的正确位置,这是在导航器>文件检查器中):