我从我的应用程序的用户那里收到了很多崩溃报告,如下所示:
Application Specific Information:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException',
reason: 'Invalid parameter not satisfying: view != nil'
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x36fb8848 0x36fa8000 + 67656
1 CoreFoundation 0x33d1d957 0x33c64000 + 760151
2 libobjc.A.dylib 0x3280f345 0x32806000 + 37701
3 libc++abi.dylib 0x3080e3c5 0x3080a000 + 17349
4 libc++abi.dylib 0x3080e451 0x3080a000 + 17489
5 libc++abi.dylib 0x3080f825 0x3080a000 + 22565
6 libobjc.A.dylib 0x3280f2a9 0x32806000 + 37545
7 CoreFoundation 0x33c7350d 0x33c64000 + 62733
8 CoreFoundation 0x33c7336d 0x33c64000 + 62317
9 GraphicsServices 0x331f1439 0x331ed000 + 17465
10 UIKit 0x35968e7d 0x35937000 + 204413
11 MyApp 0x0000379f 0x1000 + 10143
唯一引用我的应用程序的行是最后一行。当我对它进行符号化时,它会在 main.m 中的以下行结束:
int retVal = UIApplicationMain(argc, argv, nil, nil);
这真的没有给我很大的调查空间。从调用堆栈看来,甚至还没有调用 App 委托,更不用说其他视图控制器了,所以我无法弄清楚断言指的是哪个视图以及为什么它是 nil。
这些报告的唯一共同点是它们都来自装有 IOS 5.1 的 iPad。运行旧版本的 iPad 或 iPhone/iPod 没有此类崩溃报告。
我无法在我们的测试设备上重现崩溃,因为我不知道用户在崩溃之前做了什么。
有人遇到过这个问题并有解决方案吗?