检测有问题的数组(debugging模式)
我调用几个方法时,我的应用程序正在粉碎
我可以看到错误消息,我明白它说什么,但我不知道如何检测消息的问题arrays。 项目中有很多数组。 我怎么知道问题从哪里来?
这是消息:
2014-12-16 15:07:01.830 myApp[2776:1237923] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array' *** First throw call stack: (0x2a3eae3f 0x37a98c8b 0x2a2ffc49 0x114c07 0x2d8e515d 0x2d8e3835 0x2d8df47d 0x2d885b37 0x2d2adccd 0x2d2a96b5 0x2d2a953d 0x2d2a8f21 0x2d2a8d25 0x2d2a2bfd 0x2a3b15cd 0x2a3aec8b 0x2a3af093 0x2a2fd621 0x2a2fd433 0x316ab0a9 0x2d8e7809 0x12fee5 0x38018aaf) libc++abi.dylib: terminating with uncaught exception of type NSException
要处理所有exception,请从Xcode单击显示断点导航器
单击底部的+
button,然后从popup的单击添加exception断点。
这将为应用程序添加exception断点,如果发生任何运行时exception,则尝试再次运行并停止执行。
如果这不起作用,启用僵尸环境的项目,检查出这个线程 –
如何从Xcode中设置exception断点
在Xcode中启用Zombie对象以更好地进行错误跟踪。
启用
- 按下Command + Option + R
- 在诊断选项卡 – >内存pipe理下
- 选中“启用僵尸对象”
希望这可以帮助
- 如何在ViewDidAppear和ViewDidDisappear从其他类中插入代码
- 如何将json数据从alamofire转换为swift对象
- 从应用程序代表快速执行Segue
- Swift 2 AVPlayer – 播放下一个video上一个video
- 使用NotificationCenter Observer处理asynchronous请求
- Swift 3 Firebase:当前用户login成功,事件已经在Firebase控制台中删除此用户
- 无法将types'NSRange'(aka'_NSRange')的值转换为期望的types'Range <Index>'(又名'Range <String.CharacterView.Index>')
- 在许多VC中使用活动指示器,而不需要快速复制代码
- Swift UITableView reloadData在闭包中