zl程序教程

您现在的位置是:首页 >  其他

当前栏目

使用symbolicatecrash工具符号化Crash日志

2023-04-18 15:52:43 时间
对于打包上线的APP,或者打包测试的APP,出现了崩溃并不能方便的把手机链接到电脑使用XCode自动符号化,此时手动符号化就是重要的选项。

1.查找符号化工具symbolicatecrash
find /Applications/Xcode.app -name symbolicatecrash -type f
2.添加环境变量
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
3.把Dsym文件,crash文件,symbolicatecrash文件放到桌面同一个文件夹下
4.确认当前崩溃.crash文件与拿到的Dsym文件是否属于同一个App版本
获取符号文件的UUID: dwarfdump --uuid dSYM文件路径
对比崩溃日志中的UUID。 在崩溃.crash文件Binary Images:段中做对比。
5.执行符号化
./symbolicatecrash CrashName.crash AppName.app.dSYM > result.crash
 
脚本如下:
#!/bin/sh

# 使用方式:sh _symbolCrash.sh CrashName.crash路径 AppName.app.dSYM路径
# 保存外部传参
paramNum=$#
crashPM1=$1
symbolPM2=$2
readonly location=`pwd`
tempPath=""

#1.增加环境变量
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer

#2.查询符号化工具symbolicatecrash
tool=`find /Applications/Xcode.app/Contents -name symbolicatecrash -type f`
echo "查询到符号工具路径为:
 $tool"

#3.查询崩溃文件中UUID
uuid=`dwarfdump --uuid $symbolPM2`
echo "DSYM文件中UUID为:
 ${uuid}"

#4.符号化结果, crash文件路径 symbol符号路径先后顺序不能变
rm ~/Desktop/Result.crash
${tool} $crashPM1 $symbolPM2 > ~/Desktop/Result.crash

open ~/Desktop/Result.crash
使用方法:
进入到脚本所在的目录
打开终端,在终端输入脚本指令: sh _symbolCrash.sh
然后依次拖入Crash文件,Dsym文件到终端
点击enter, 等待输出结果。