我如何在没有存档但有 .dsym 文件的情况下进行符号化?

How can I symbolicate without archive but have .dsym files?

我必须符号化给我的崩溃报告,但是我没有创建发送给 Apple 的初始存档。但是,我确实有 .dsym 文件。有什么方法可以符号化崩溃文件吗?

谢谢。

这是假设 Xcode 8.2.1 安装为 Xcode.app

在您的桌面上创建一个新文件夹并将其命名为symbolication 将.dsym 文件放入symbolication 文件夹

下载崩溃报告 (我使用 CustomerID.crash 作为这些文件的格式)

在终端中,输入:

cp /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash  ~/desktop/symbolication/symbolicgtecrash
cd ~/desktop/symbolication
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"

然后为每个要符号化的文件键入:

./symbolicatecrash CustomerID.crash > CustomerID_symbolicated.crash

(其中 CustomerID 是保存崩溃报告时使用的客户 ID)

这是获取崩溃日志的另一种方法:-

使用带有崩溃地址的 atos 命令复制您的应用程序 dSYM 文件路径并在终端上执行:-

命令如下:-

atos -arch arm64 -o ~/Documents/yourApp.app.dSYM/Contents/Resources/DWARF/yourApp yourExceptionAddress

例如:-

你的异常地址 = 0x100048000