Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 调试Xcode中的未捕获异常_Ios_Xcode - Fatal编程技术网

Ios 调试Xcode中的未捕获异常

Ios 调试Xcode中的未捕获异常,ios,xcode,Ios,Xcode,我正试图更好地使用Xcode。我打开了AllExceptions断点。当我的应用程序崩溃时,我看到: *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 1 beyond bounds [0 .. 0]' *** First throw call stack: (0xbb8052 0x209cd0a 0xba4db8 0

我正试图更好地使用Xcode。我打开了AllExceptions断点。当我的应用程序崩溃时,我看到:

*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 1 beyond bounds [0 .. 0]'
*** First throw call stack:
(0xbb8052 0x209cd0a 0xba4db8 0x2255f2 0xc2439 0x12a5e0f 0x12a6589 0x146bfb1 0x147617c 0x12938e1 0x1290602 0x129b211 0x129b23f 0xc16a6 0x138a4c 0x138852 0x14d0e39 0x14d0143 0x14d13cf 0x14d3a31 0x14d398c 0x14cc3e7 0x1234812 0x1234ba2 0x121b384 0x120eaa9 0x28d3fa9 0xb8c1c5 0xaf1022 0xaef90a 0xaeedb4 0xaeeccb 0x28d2879 0x28d293e 0x120ca9b 0x265c 0x25c5)
terminate called throwing an exception(lldb) 
在LHS上,当我看不同的线程时,我看不到任何真正有意义的东西。我看到了一些CFRunLoop的东西,但我没有看到任何“正常”的方法名称,比如UITableView委托/数据源方法或我自己的方法。我想知道,当我的应用程序崩溃时,是否有一个更有用的堆栈跟踪,而不是十六进制的东西。我知道我可以在访问数组的每个地方设置断点,我认为我有问题,因为我基本上只是想用我们特定的数据源创建一个类似手风琴的tableview,但我想知道是否有一种更快的方法,通过查看Xcode中有用的内容。谢谢

在Xcode中

  • 转到左侧窗格上的断点导航器
  • 单击底部的“+”
  • 选择“添加异常断点…”
  • 让默认选择显示在那里,然后单击“完成”

  • 重新运行应用程序,查看执行是否在导致此异常的行停止。

    在开发期间处理XCode中异常的最简单方法是添加异常断点

    您可以按如下方式进行操作

  • 从左侧菜单中选择例外导航器
  • 从左下角添加异常断点按钮
  • 为所有异常添加断点
  • 运行应用程序

  • 在大多数情况下,XCode会停止执行异常,并指向导致异常的行。

    搜索代码中的任何循环,并检查是否调用边界索引。你有一个数组,只有一个对象,根据我的经验,你调用数组[1],我认为xcode中的任何工具都可以在这方面帮助你。如果您在设备上运行,您可以从Organizer中查看日志,在那里您可能会发现更有用的信息。例如,您有1000个已处理的异常,您希望找到一个未捕获的异常,那么这并没有多大帮助。。。