应用是用了U盟的crash收集,但是错误详情里反映的那些看不明白,鼓捣了很久才搞明白。
在友盟中统计了许多的App的数据,当然也会有好多的Crash报告,如下图,但是这样不知道如何定位错误,所以研究了一下.
如何解析这些地址呢?
首先在编译App的时候会生成两个文件.app和.DSYM, 需要把这两个文件放在同一目录/Users/apple/Library/Developer/Xcode/Archives/2013-08-12/Car\ 13-8-12\ 上午1.12.xcarchive/Products/Applications下.
然后在命令行中输入如下命令:
cd /Users/apple/Library/Developer/Xcode/Archives/2013-08-12/Car\ 13-8-12\ 上午1.12.xcarchive/Products/Applications
atos -arch armv7 -o Car.app/Car 0x612af
就会解析地址得到代码信息,如下
注意:在上面的命令中我用的是armv7,也可以根据你生成.App情况来选择使用armv6或者i386
以下是三者区别:
-
Armv6 binaries are needed if you're targeting iPhone3G.
-
Armv7 binaries are desirable if you're targeting iPhone3GS/4 or iPad.
-
i386 binares are needed if you intent to run your code at the Simulator.