Xcode在崩溃后总是停在main.m

在过去,随着旧的和良好的Xcode 3,每当我发生崩溃,Xcode停在显示崩溃的罪行。 这是好时光,很好debugging。

现在使用Xcode 4.2,每当应用程序崩溃,它停在main.m这一行

int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate"); 

这并没有提供什么导致崩溃的线索。 这个问题可以在任何类中,但是当它崩溃时它总是会停在main.m上。

有没有办法让它再次正常工作?

谢谢

注意:我之前曾经问过这个问题,但是当时的解决scheme被certificate是不能令人满意的,问题依然存在。

他们改变了行为,按照本教程打破所有例外

编辑:( 链接可能会烂,所以我会在这里复制信息)

Xcode 4.2中的一个隐藏的gem是“exception断点”function。 一旦你启用它,你的debugging生活将变得更加容易,因为无论什么时候在你的应用程序中抛出一个exception,Xcode将调出导致exception发生的代码行。 如果您的调用堆栈窗口为空(我在iOS应用程序上工作时曾经看到过这种情况),这一点特别有用。 不要在“输出”窗格中依赖简单的错误消息,而是不包含比exceptiontypes及其错误消息更多的简短错误消息,您可以确切地看到问题出在哪里!

您可以通过打开“断点导航器”窗格并单击左下angular的Xbutton来添加一个“exception断点”:

点击“添加exception断点…”菜单项后,你会看到这个断点configuration视图打开:

单击完成button,您将在断点列表中的新的例外断点。 如果你想让所有的Xcode工作区都包含exception断点,右键单击(Ctrl +单击)并打开“Move Breakpoint To”菜单项:

在子菜单中单击“用户”后,您将看到exception断点位于用户组断点中。 打开另一个项目,它会自动包含在断点列表中。

快乐debugging!

只要尝试以下步骤为我工作。

  1. 打开首选项,select行为选项卡。
  2. 从左列select“意外退出”。
  3. select“显示当前视图的debugging器”。

不幸的是,这又在编辑器中恢复为main.m了。现在你需要按照以下步骤操作

  1. 打开首选项,select行为选项卡。
  2. 只要去“运行完成”
  3. find“显示”行并点击checkbox
  4. 在同一行修改目标,在下拉菜单中select“当前”。

这应该工作