iOS使用dSYM文件和堆栈信息定位bug

一、首先要找到匹配的.dSYM文件。


Xcode的工程目录
.dSYM文件所在目录

工程每次Build都会更新.dSYM文件,所以需要保存.dSYM文件。

在Terminal中进入.dSYM文件的所在目录下,执行:

dwarfdump --uuid appName.app.dSYM

结果是:

UUID: 3C13BB78-4599-356B-8041-3EA731094CDD (armv7) appName.app.dSYM/Contents/Resources/DWARF/cheyipai
UUID: 731A43CF-C7F4-3590-9690-9D6A9C0B7934 (arm64) appName.app.dSYM/Contents/Resources/DWARF/cheyipai

二、如果程序基地址为0x0039488b,方法的堆栈地址为0x00078000,那么执行:

atos -arch armv7 -o appName.app.dSYM/Contents/Resources/DWARF/appName -l 0x00078000 0x0039488b

(PS:如果是arm64就把armv7 换为arm64。)

结果是:

-[PagedFlowView dequeueReusableCell] (in cheyipai) (PagedFlowView.m:370)

参考文章
符号化iOS崩溃报告 http://www.jianshu.com/p/3be296cacb47

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容