【问题标题】:XCode 4 iOS - Debugger shows bytecode instead of telling me what line my app crashedXCode 4 iOS - 调试器显示字节码而不是告诉我我的应用程序在哪一行崩溃了
【发布时间】:2011-11-11 09:43:01
【问题描述】:

当我的应用程序崩溃时,我没有看到是什么行导致的,而是看到一个窗口,其中打印了所有不可读的字节码。我曾经能够看到它在哪条线路上崩溃,但我一定改变了一些东西。这是一个屏幕截图:

我可以更改什么设置让 XCode 显示我的应用程序崩溃的位置?

【问题讨论】:

  • 我还没有找到答案,但我花了很多时间在互联网上梳理试图自己弄清楚,但没有任何运气。我已经有一个异常断点,但是为什么我不能简单地看到我的应用在哪一行代码崩溃了?

标签: objective-c ios xcode xcode4


【解决方案1】:

UN选中“调试时显示反汇编”菜单选项:



与上述相反;如果你想显示当前调试位置的反汇编,你可以使用这个下拉菜单:

【讨论】:

  • 正是我需要的!当我被允许时,将奖励赏金。非常感谢!
【解决方案2】:

实际的崩溃可能不一定在您的代码中。调试器会将您指向导致崩溃的机器指令。它可能是在 cocoa-touch 方法或操作系统调用中由于您传入的错误参数而崩溃(无效的指针是常见的罪魁祸首)。

因为调试器无法访问实际崩溃的代码的源代码,它会显示反汇编的机器代码。您需要做的是向后跟踪调用堆栈,直到到达您的代码。这应该将您指向应用程序中(间接)导致崩溃的代码行。

【讨论】:

  • +1 表示“它可能在 cocoa-touch 方法或操作系统调用中由于您传入的参数错误而崩溃”
猜你喜欢
  • 1970-01-01
  • 2011-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-27
  • 2018-03-06
  • 1970-01-01
相关资源
最近更新 更多