【问题标题】:Xcode 5.0.2 doesn't point to the actual crashed lineXcode 5.0.2 没有指向实际崩溃的行
【发布时间】:2014-02-03 12:16:04
【问题描述】:

我使用的是 Xcode 5.0.2,当我在设备上运行 iPhone 应用程序时它崩溃了,但问题是它没有将我指向崩溃的实际行,也没有从堆栈中打印任何东西在控制台中跟踪,它只在这一行中指向 main:

return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

但是我尝试了以下方法:

  • 为所有异常设置一个异常点
  • 用 try catch 块包围上述行以打印堆栈跟踪,但它也不会打印任何内容
  • didFinishLaunchingWithOptions 方法中放置一个断点,但它也不会在这些位置停止

这是在 main 中停止时生成的所有线程的图像:

我认为故事板有问题,但我不知道到底是什么,提前谢谢

【问题讨论】:

标签: ios iphone objective-c xcode


【解决方案1】:
  1. 转到项目导航器
  2. 选择断点选项卡
  3. 从底部点按“+”按钮
  4. 添加异常断点

添加后..它会指向崩溃的应用程序。

【讨论】:

    【解决方案2】:

    可能是一个死引用。例如。从视图到不再存在的实例变量的连接。

    检查故事板中的所有奥特莱斯。旁边会有一个感叹号。

    【讨论】:

    • 我在我的storyBoard上追踪了所有的观点,没有一个孤立的!!
    【解决方案3】:

    您没有捕获正在引发的异常,您需要添加一个Exception Breakpoint,它将捕获崩溃并在该行停止。

    在断点导航器中为您的项目添加异常断点。

    步骤

    1. 在断点导航器的左下角,单击“添加”按钮。
    2. 选择添加异常断点。
    3. 在“异常”弹出菜单中,选择要停止执行的异常类型:
      • 全部。在所有异常情况下停止。
      • 目标-C。在 Objective-C 异常时停止。
      • C++。在 C++ 异常时停止。

    要停止特定的 C++ 异常,请指定异常名称。

    4 选择您希望程序执行停止的异常处理过程的阶段。

    5 点击完成。

    【讨论】:

    • @Downvoter 请详细说明拒绝投票的原因。如果可能的话,留下一个理由将允许用户改进答案。
    【解决方案4】:

    检查您的故事板名称是否有效。这个答案是我的猜测

    因为故事板是要描述的问题图片

    在您的项目中启用 NSZombie 对象。 goTo 编辑架构,然后启用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-06
      • 2012-07-12
      • 2016-03-13
      • 2014-12-21
      • 1970-01-01
      • 2015-12-06
      • 2012-03-29
      • 1970-01-01
      相关资源
      最近更新 更多