0

我正在EXC_BAD_ACCESS使用我的 iPhone 应用程序0x01ad809b <+0015> mov 0x8(%edx),%edi

我已经NSZombieEnabled设置了,YES但我没有像往常一样在调试器中看到任何类打印出来。

有没有另一种方法来调试这个问题?

4

3 回答 3

0

您的崩溃很可能是由于内存损坏、使用未初始化的变量和/或将非对象类型转换为对象造成的。

首先,发布崩溃的回溯。这将提供更多上下文。

其次,尝试构建和分析。修复它发现的任何问题。

最后,如果这是一次新的崩溃,请返回崩溃前的修订版,然后前滚直到遇到崩溃。在这段时间里发生了哪些变化?

有了更多的上下文——尤其是崩溃日志(或至少是回溯)——可以提供更具体的调试技术。

于 2011-10-17T19:43:15.993 回答
-1

改为使用仪器来分析和检测僵尸。

  1. 将构建目标更改为模拟器
  2. Build菜单中,选择Profile
  3. 仪器将打开,然后选择Zombies仪器

这会自动设置NSZombieEnabled标志,并在向解除分配的对象发送消息时弹出消息。单击该公开将显示该对象的内存管理事件。

于 2011-10-17T19:19:48.990 回答
-1

您可以选择 Breakpoint navigator 并在所有异常上添加断点。也许会有所帮助。

也尝试使用 malloc 信息。

于 2011-10-17T18:51:47.370 回答