找到 .app.dSYM 文件、.app 文件,并和 .crash 文件放到同一个文件夹(crash)内,如 Desktop/crash
Xcode -> Window -> Organizer,找到对应的 .xcarchive 文件,右键选择显示包内容
在 dSYMs 文件夹下找到 .app.dSYM 文件
在 Products -> Applications 文件夹内找到 .app 文件
找到 symbolicatecrash 工具
在终端输入命令:
find /Applications/Xcode.app -name symbolicatecrash -type f
终端输出:
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
用命令将 symbolicatecrash 文件拷贝到上面的同一个文件夹内
cp /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash /Users/ghy/Desktop/crash
红字部分为同一文件夹的路径
执行 symbolicatecrash
打开终端,用命令切换到 crash 文件夹下
cd /Users/ghy/Desktop/crash执行以下命令
./symbolicatecrash ScaryCrash.crash AppName.app.dSYM > result.crash
ScaryCrash.crash — 原始crash文件
AppName.app.dSYM — 获取到的符号列表
result.crash —解析过后的crash文件
如果出现 Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69 则执行以下命令后,重新执行上面的命令
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"完成后,在文件夹内就会生成一个经过 symbolicate 的 result.crash 文件,通过它就可以查看到引起错误的具体文件和行数。