经常遇到测试给我们提一个崩溃bug(非必现),然后符一个*.ips文件,打开里面全是内存地址,这时候就需要我们把这些地址符号化才能找到问题然后解决问题。对于.crash文件解决方法和*ips一样(ps:网上大部分讨论的是解决*.crash崩溃日志,我很纳闷,后来发现他们俩是一样的)。
先明确需要的文件
-
symbolicatecrash (xcode内置的工具)
-
youApp.dsym (符号文件 需要是当次崩溃的app打包的产物)
-
.crash 或者.isp文件
然后执行
find /Applications/Xcode.app/ -name symbolicatecrash 得到symbolicatecrash的位置即
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
设置环境变量
export DEVELOPER_DIR=`xcode-select --print-path`
执行命令
yoursymbolicatecrashdir your.crash your.dSYM >crashlog.crash
记得把命令中的文件路径替换为自己的文件路径