iOS -- 友盟工具进行Crash分析/dsym文件
项目中集成了友盟统计,点击错误分析可以看到相关的错误列表以及简单的crash日志,但是直接收集上来的一般都是堆栈信息,对于定位bug没有太大的用处,如果想看详细的crash详情则需要使用友盟的错误分析工具:umcrashtool.
错误分析工具的使用
第一步 下载 错误分析工具.
第二步 进入友盟后台,下载xxx.csv文件.
1.png2.png
第三步 将umcrashtool与已下载的xxx.csv文件放入同一目录下,文件夹名字为umcrash.
3.png第四步 打开终端,跳到umcrash文件夹目录下
命令行: cd 文件夹目录
执行当前命令:
命令行: ./umcrashtool 【一个空格】/Your错误列表.csv文件目录
例:./umcrashtool /Users/allison/Desktop/umcrash/founder_UMDemo_com_错误分析20180625错误列表_175206.csv
执行完后,在终端可看到如下的结果:
4.png下图是友盟后台收集上来的原始的崩溃信息:
原始崩溃信息.png
通过对比下友盟直接收集上来的崩溃信息,可以发现,工具分析出来的崩溃信息更为精确,可以定位出来崩溃的类名、行数,能够帮助我们迅速定位bug.
Tips:
如果你的dsym文件不存,很大可能是因为以下两个原因:
(1). Xcode设置原因,会在下面的图示中指明 如何生成dSYM文件
XCode Release编译默认会生成dSYM文件,而Debug编译默认不会生成,对应的Xcode配置如下:
5.png 6.pngXCode -> Build Settings -> Code Generation -> Generate Debug Symbols -> Yes
XCode -> Build Settings -> Build Option -> Debug Information Format -> DWARF with dSYM File
这样,以后archive出来的文件就会包含dSYM文件了.
(2). 请先确保对应的 xxx.dSYM 文件在 ~/Library/Developer/Xcode/ 或该路径的子目录下。(对于每一个产品发布时archive操作会将dsym文件存放到~/Library/Developer/Xcode/Archives路径下,因此建议保留该路径下的文件,以便后续用工具分析错误。)