iOS 通过dSYM文件分析crash-函数地址定位问题

app打包或者上线之后能够很方便的获取客户端异常信息,但有时候获取到的异常错误信息不能直观的定位问题,例如:

屏幕快照 2016-03-22 16.48.32.png

dSYM文件对应

每次app打包或上线时记得保存对应的xcarchive文件。xcarchive文件中包含所需要dSYM文件和.app。

1、
屏幕快照 2016-03-22 17.11.51.png

2、
屏幕快照 2016-03-22 17.00.04.png

3、
屏幕快照 2016-03-22 17.16.59.png

4、
屏幕快照 2016-03-22 17.21.09.png

每一个 xx.app 和 xx.app.dSYM 文件都有对应的 UUID,crash 文件也有自己的 UUID,只要这三个文件的 UUID 一致,我们就可以通过他们解析出正确的错误函数信息了。xcarchive文件可能有很多个,需要通过UUID找到对应的文件。

1.查看 xx.app 文件的 UUID,terminal 中输入命令 :

dwarfdump --uuid xx.app/xx (xx代表你的项目名),如:TiJian.app/TiJian

2.查看 xx.app.dSYM 文件的 UUID ,在 terminal 中输入命令:

dwarfdump --uuid xx.app.dSYM 如:TiJian.app.dSYM

3.crash 文件内第一行 Incident Identifier 就是该 crash 文件的 UUID。

屏幕快照 2016-03-22 16.48.32.png

dSYM工具

下载地址: dSYM.app

github(大牛的详细说明): dSYM github

使用步骤:

1.将打包发布软件时的xcarchive文件或者.dSYM文件拖入软件窗口内的任意位置(支持多个文件同时拖入,注意:文件名不要包含空格)

2.选中任意一个版本的xcarchive文件(一定要点击选中),右边会列出该xcarchive文件支持的CPU类型,选中错误对应的CPU类型(crash日志有详细信息)。

3.对比错误给出的UUID和工具界面中给出的UUID是否一致。

4.将错误地址输入工具的文本框中,点击分析。

屏幕快照 2016-03-22 17.28.42.png

**资料参考 **http://www.cocoachina.com/ios/20141219/10694.html https://github.com/answer-huang/dSYMTools

https://github.com/answer-huang/dSYMTools

你可能感兴趣的:(iOS 通过dSYM文件分析crash-函数地址定位问题)