友盟错误分析

友盟错误分析_第1张图片
友盟错误分析_第2张图片

一、逐条分析

打开终端 输入

cd /Users/tech-suanle/Desktop/testDSYM/MBuyGo.app.dSYM/Contents/Resources/DWARF
atos -arch arm64 -o MBuyGo 0x100cdee20

第一行进入APP 的 dSYM文件的DWARF目录下

在XCODE编译项目之后,会在app旁看见一个同名的dSYM文件。
他是一个编译的中转文件,简单说就是debug的symbols包含在这个文件中。

第二行输入上边的内存地址,如果成功的话可以分析出错误所在的类和方法所在的行数

二、批量分析

  • 导出错误列表
友盟错误分析_第3张图片
  • 通过终端打开友盟错误分析工具+错误列表CSV文件
友盟错误分析_第4张图片
haha:~ jianxin.li$ /Users/xp/Desktop/YM/umcrashtool /Users/xp/Desktop/YM/ios麦乐购_错误分析_20160511165528.csv 

保证dSYM文件在 ~/Library/Developer/Xcode/目录下才可以
否则得到以下提示

>---------------------- Row   7 -----------------------<
=> Start *** setObjectForKey: object cannot be nil (key: orderId) 
    -> Please move dsym file: "31F4EE95-DFEE-39FB-80A1-3703D525E56C" to ~/Library/Developer/Xcode/.
=> End *** setObjectForKey: object cannot be nil (key: orderId) 
>------------------------------------------------------<
  • 得到结果并且生成分析完成的CSV文件(和错误分析工具及错误列表在同目录下)
    结果类似如下
>---------------------- Row  11 -----------------------<
=> Start Application received signal SIGSEGV 
    -> translating『 0xcb8889 』=> 
    -> translating『 0x1e6a39 』=> main MBuyGo/main.m: line 13
=> End Application received signal SIGSEGV 
>------------------------------------------------------<

三、借助工具(原理同一)

友盟错误分析_第5张图片

你可能感兴趣的:(友盟错误分析)