减小 dSYM 文件的大小以进行符号化

Posted

技术标签:

【中文标题】减小 dSYM 文件的大小以进行符号化【英文标题】:Reducing size of dSYM files for symbolication 【发布时间】:2020-02-12 20:46:23 【问题描述】:

我们正在寻找减少来自 Apple 平台的 dSYM 文件大小的方法。我们只需要 dSYM 文件来表示崩溃的堆栈跟踪,在 Crashlytics 博客中我读到了this:

这些映射实际上比所需的要多得多 符号化,提供了一些优化的机会。他们 拥有通用符号调试器执行所需的一切 通过并检查您的程序,这可能是大量的 信息。在 ios 上,我们看到 dSYM 的大小超过 1GB!这 是一个真正的优化机会,我们利用这一点 有两种方式。首先,我们只提取我们需要的映射信息到 轻量级,平台无关的格式。这导致了一个典型的 与 iOS dSYM 相比,节省空间 20 倍。

将尺寸缩小 20 倍听起来很不错,但我几乎没有找到有关如何做到这一点的信息。我是否需要了解 Mach-O DWARF 的详细信息才能实现这一点,或者某些命令行工具可以做到这一点?我也想知道剥离后的版本是否可以直接用于符号化。

谢谢。

【问题讨论】:

【参考方案1】:

Crashlytics 将 dSYM 转换为 cSYM,并使用这些 cSYM 进行符号化。这种转换发生在客户的 Mac 上。您可能想查看实际上传到 crashlytics 的 cSYM 文件的最终大小。

【讨论】:

谢谢钦坦。我猜这个 cSYM 是他们的自定义格式,对吧?搜索它并没有返回太多。我们想自己做。 是的,cSYM 是一种自定义格式,一旦上传符号脚本运行完毕,它就会被删除

以上是关于减小 dSYM 文件的大小以进行符号化的主要内容,如果未能解决你的问题,请参考以下文章

禁用位码时下载 dSYM

符号化需要DSYM和二进制?还是只是 DSYM?

dsym 更多信息显示——

Xcode 存档中的空 dSYM 文件夹

如何打开 .dSYM 包查看符号列表?

Xcode:如何创建 dSym 并仍然剥离符号?