使用Xcode 5.1.1在iOS中启用和调试僵尸对象

问题描述:

我有一个iOS(7.1)应用程序,由于EXC_BAD_ACCESS而崩溃。如果我没有错,就会发生这种情况是由于使用了一个已经解除分配的对象。经过一番搜索后,我发现启用Zombie对象有助于指出错误行。当我使用xcode 5.1.1时,我已经完成了以下操作来启用僵尸对象使用Xcode 5.1.1在iOS中启用和调试僵尸对象

Product -> Scheme -> Edit Scheme


然后,检查 Enable Zombie Objects复选框,

Checking <code>Enable Zombie Objects</code>


后来我到了 仪器面板,选择 僵尸,点击 档案,得到了这,

iOS simulator and Instruments panel


现在 模拟器(左背景),其中有一个 buttontextfield正在运行的空白,也是我无法理解 仪器面板上的任何东西。

下一步应该是什么?我的意思是我怎么能得到导致访问不良的线路?我坚持了几个小时,但仍然无法找到该程序。

任何帮助表示赞赏。

访问解除​​分配的对象并不是获得EXC_BAD_ACCESS的唯一原因。其他导致访问错误的原因包括访问nil指针并超过数组的边界。

看着你的截图,你没有使用一个释放对象。如果您使用的是释放对象,乐器中的僵尸模板会让您知道。仪器会显示类似以下内容的消息:

enter image description here

你的下一个步骤应该是在Xcode中设置一个例外断点。当您的应用程序崩溃时,Xcode会在发生崩溃的位置暂停您的应用程序。要设置异常断点,请选择View> Navigators> Show Breakpoint Navigator来打开断点导航器。点击导航器底部的+按钮,然后选择添加异常断点。

+1

是的,我完全是这样做,现在试图找出为什么一些简单的语句产生异常! – Sibir 2014-09-26 07:42:03