适用于iOS的Firebase Crashlytics:关闭不是象征性问题

时间:2018-06-16 17:45:34

标签: ios firebase crashlytics

我在Firebase Crashlytics控制台中发生了一些丢失dSYM的崩溃,因此控制台显示警报图标,要求我手动上传dSYM。

但问题是这些dSYM已被覆盖并且不再存在于计算机上,因此无法在主要问题列表中提供这些问题。

有人知道吗,至少有没有办法删除/关闭这些问题?

3 个答案:

答案 0 :(得分:1)

我使用了一种解决方法。在我们对崩溃做任何事情之前,Crashlytics 需要 dSYMs?好的,我们会给他。

即使崩溃构建的原始 dSYM 丢失(或未生成),您也可以采用最接近崩溃版本的项目版本并生成 dSYM(这就是为什么拥有版本控制是好的原因)。如果您找不到 dSYM,请确保在构建设置中启用它们:

enter image description here

问题是 - 生成的 dSYM 将有另一个 UUID,并且 Crashlytics 不会将它与崩溃进行匹配以进行符号化。在这里,我们做了一个 hack,将生成的 dSYM 中的 UUID 替换为控制台中缺少的 dSYM 之一。

  1. 在数据包的信息中查找生成的 dSYM UUID(CMD+I >“更多信息”>“dSYM UUID”):

enter image description here

  1. 在生成的 dSYM 数据包中找到 dSYM 文件(使用“显示数据包内容”打开数据包):

enter image description here

  1. 使用任何 HEX 编辑器打开文件(我使用 AppStore 中的 Hex Fiend)并找到 UUID(它位于文件的开头);请注意,它将是原始字节,而不是 UUID 字符串:

enter image description here

  1. 用丢失的 dSYM 之一替换生成的 UUID,保存,将 dSYM 上传到控制台。

仅此而已。如果你足够幸运,崩溃可能是正确的 象征性的;否则你至少可以关闭它)

答案 1 :(得分:0)

感谢。来自Crashlytics的托德。现在,不可能强制关闭这些崩溃,尽管这是一个有趣的想法。启动新版本后,您的dSYM将在仪表板中显示不太明显。

答案 2 :(得分:0)

没过多少年,Crashlytics 添加了解决方案,它位于 dSYMs 选项卡上:

enter image description here