NSRangeException仅在设备上发生,但不在模拟器中发生

时间:2017-03-17 17:55:49

标签: ios objective-c iphone xcode8

应用程序在设备上崩溃但在模拟器中没有崩溃。 xcode(8.2.1)控制台没有显示太多信息。

它在didFinishLaunchingWithOptions方法之前崩溃,所以我无法调试它。

这是完整的堆栈跟踪

  

*由于未捕获的异常'NSRangeException'而终止应用程序,原因:'* - [__ NSArrayI objectAtIndex:]:索引9超出边界[0 ..   8]”   ***首先抛出调用堆栈:(0x18f8251b8 0x18e25c55c 0x18f7007f4 0x195e803a0 0x195beb928 0x195a1db58 0x195a1dd88 0x195a0b320   0x195a22dec 0x1957bede8 0x1956d7a80 0x192b859d8 0x192b7a4cc   0x192b7a38c 0x192af73e0 0x192b1ea68 0x192b1f488 0x18f7d20c0   0x18f7cfcf0 0x18f6fe2d8 0x1957457b0 0x195740534 0x1001492fc   0x18e6e15b8)libc ++ abi.dylib:以未捕获的异常终止   输入NSException

我已经为objectAtIndex添加了符号断点。 它一直在点击:

CoreFoundation`-[__NSArrayI objectAtIndex:]:
->  0x18f70073c <+0>:   adrp   x8, 148294

并且在我连续多次执行后它崩溃了。

为什么它会在设备上发生,而不是在模拟器上发生?

1 个答案:

答案 0 :(得分:0)

我从Link Binary with Libraries部分删除了pods_appName.framework,之后没有发生崩溃。

我仍然感到惊讶为什么这些天都没有崩溃!