16

目前,我的崩溃组织者如下所示。 在此处输入图像描述

我之前没有真正使用过崩溃日志,但对我来说,崩溃看起来并不具有象征意义。我无法找到应用程序崩溃的位置以及原因。此外,当我在项目中打开堆栈跟踪时,没有突出显示任何内容,我无法判断它在文件中崩溃了哪一行。我的问题是:有没有办法从组织者内部象征所有这些崩溃,还是必须通过终端完成?

谢谢。

4

2 回答 2

29

您所看到的是,像 UITableView 这样的 SDK 类是符号化的,但您的“YLSA”应用程序中的类不是。两者都应该被自动象征,但根据我的经验,其中一个(或两者)通常不象征。我已经为 iOS 开发了五年,这在所有不同的 Xcode 版本中一直是一个持续存在的问题。

谢谢你不象征

我在 Xcode 7 中看到了与您相同的问题,但我能够使用以下解决方法来符号化我的日志:

  1. 在崩溃日志列表中,右键单击所需的日志并选择Show in Finder。这将显示一个包含一个或多个.crash文件和一些元数据的包。
  2. 浏览包,直到找到崩溃日志。你会看到相同的信息在这里已经或没有被符号化。
  3. 在 Xcode 中,打开 Devices 窗口并选择一个连接的设备,然后单击View Device Logs按钮。
  4. 将步骤 2 中的崩溃日志从 Finder 拖到此设备的日志列表中。
  5. 当我这样做时,我从来没有看到我添加的日志出现在列表中,但是如果我单击标题一次或两次以重新排序列表,那么我会看到它。
  6. 片刻之后,崩溃日志将完全符号化。

如果您的列表中已经有很多日志,您可以在 Finder 中查看日志时将日期、iOS 版本和硬件型号与 Xcode 中的日志进行比较,以确保您查看的是相同的日志。然后查看显示“由线程触发”的行以获取崩溃的线程号,然后向下滚动到该线程以查看触发崩溃的代码。

今天这对我有用 Xcode 7。我希望它对你有帮助!

于 2015-11-17T19:16:01.420 回答
0

当您通过 Xcode 提交应用程序时,会出现一个包含调试符号的选项。下次提交应用版本时,请务必选择该版本;如果你没有,那可能会解释你所看到的问题。不幸的是,对于已经提交的应用程序版本,无法追溯执行此操作,因此您必须等到准备好提交下一个版本才能查看是否存在问题。

于 2015-11-23T01:16:35.243 回答