我是Xcode和Objective-C的新手。与Android Java异常不同,尽管可以从崩溃日志中知道函数名称,但我找不到发生异常的确切行号。以下是崩溃日志:

    2014-07-28 17:44:53.814 ExampleApp[82720:70b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil'
*** First throw call stack:
(
0   CoreFoundation                      0x034b25e4 __exceptionPreprocess + 180
1   libobjc.A.dylib                     0x028bc8b6 objc_exception_throw + 44
2   CoreFoundation                      0x03464bcc -[__NSArrayM insertObject:atIndex:] + 844
3   CoreFoundation                      0x03464870 -[__NSArrayM addObject:] + 64
4   ExampleApp                           0x0017f99e +[ReportGenerator prepareReportList:] + 5486
5   ExampleApp                           0x0017db99 +[ReportGenerator generateReportContent:viewController:] + 73
6   ExampleApp                           0x0017b682 +[ReportGenerator generateReport:viewController:style:] + 322
7   ExampleApp                           0x000a68fd -[ReportsViewController showReport] + 189
8   libobjc.A.dylib                     0x028ce81f -[NSObject performSelector:withObject:] + 70
9   Foundation                          0x01fa29d8 __NSThreadPerformPerform + 285
10  CoreFoundation                      0x0343b83f __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
11  CoreFoundation                      0x0343b1cb __CFRunLoopDoSources0 + 235
12  CoreFoundation                      0x0345829e __CFRunLoopRun + 910
13  CoreFoundation                      0x03457ac3 CFRunLoopRunSpecific + 467
14  CoreFoundation                      0x034578db CFRunLoopRunInMode + 123
15  GraphicsServices                    0x046949e2 GSEventRunModal + 192
16  GraphicsServices                    0x04694809 GSEventRun + 104
17  UIKit                               0x010bbd3b UIApplicationMain + 1225
18  ExampleApp                          0x0011679d main + 125
19  libdyld.dylib                       0x0300a701 start + 1)libc++abi.dylib: terminating with uncaught exception of type NSException

最佳答案

您可以添加一个断点以停止所有异常。

来自Apple Docs


在断点导航器的左下角,单击“添加”按钮。
选择添加例外断点。
在“异常”弹出菜单中,选择要停止执行的异常类型:


所有。停止所有异常。
目标C。在Objective-C异常上停止。
C ++。在C ++异常上停止。
要停止特定的C ++异常,请指定异常名称。

选择要停止程序执行的异常处理过程的阶段。
单击完成。

09-10 05:47
查看更多