iOS调试: 使用symbolicatecrash分析crash文件

找到 .app.dSYM 文件、.app 文件,并和 .crash 文件放到同一个文件夹(crash)内,如 Desktop/crash

  1. Xcode -> Window -> Organizer,找到对应的 .xcarchive 文件,右键选择显示包内容

  2. 在 dSYMs 文件夹下找到 .app.dSYM 文件

  3. 在 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

  1. 打开终端,用命令切换到 crash 文件夹下
    cd /Users/ghy/Desktop/crash

  2. 执行以下命令
    ./symbolicatecrash ScaryCrash.crash AppName.app.dSYM > result.crash

ScaryCrash.crash — 原始crash文件

AppName.app.dSYM — 获取到的符号列表

result.crash —解析过后的crash文件

  1. 如果出现 Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69 则执行以下命令后,重新执行上面的命令
    export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"

  2. 完成后,在文件夹内就会生成一个经过 symbolicate 的 result.crash 文件,通过它就可以查看到引起错误的具体文件和行数。

你可能感兴趣的:(iOS调试: 使用symbolicatecrash分析crash文件)