前言:在iOS开发中我们经常会有分析.crash文件的需求,这篇文章简单记录一下用symbolicatecrash分析.crash文件的过程
用一张图说明问题,就是拿到crash文件找到了出错位置确不知道对应的代码中什么位置
前期准备: 1.用解压软件打开你的IPA包,把Payload
中的文件复制到crash文件同一目录下。2.将对应.dSYM文件
也复制到这个目录。(该文件一般在/Users/name/Library/Developer/Xcode/DerivedData/MyApp-*******/Build/Products
) 前提是你必须在打包或build的时候开启了选项
如果没有.dSYM
,恭喜你,你的解析工作已经提前结束啦
要想解析成功还有一个充要条件: .dSYM 文件
与.crash文件
与你的项目包(Payload
下)三者UUID 必须能对应起来. 查看UUID命令
dwarfdump --uuid Mydsym.app.dSYM
.crash文件
中的UUID在下面所示:
开始解析: 1.打开你的终端,输入以下命令回车:
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
2.找到你的解析工具symbolicatecrash
所在位置,Xcode7.3.1
在/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
.
然后按照格式:symbolicatecrash .crash文件 .dSYM文件 >result.log
拼装命令,执行即可获得解析结果result.log
命令示例:
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash /Download/log/test.crash youApp.dSYM >result.log
解析之后打开result.log你就会看到类似下图,代码中崩溃的位置已经可以看到啦
作者:SuperMario_Nil
链接:http://www.jianshu.com/p/0732d8e87521
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
关于作者