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

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



每一个 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。

dSYM工具
下载地址: dSYM.app
github(大牛的详细说明): dSYM github
使用步骤:
1.将打包发布软件时的xcarchive文件或者.dSYM文件拖入软件窗口内的任意位置(支持多个文件同时拖入,注意:文件名不要包含空格)
2.选中任意一个版本的xcarchive文件(一定要点击选中),右边会列出该xcarchive文件支持的CPU类型,选中错误对应的CPU类型(crash日志有详细信息)。
3.对比错误给出的UUID和工具界面中给出的UUID是否一致。
4.将错误地址输入工具的文本框中,点击分析。

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