美文网首页iOS进阶Objective-ciOS开发技能
iOS使用dSYM文件和堆栈信息定位bug

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

作者: s2mh | 来源:发表于2016-05-04 16:58 被阅读3922次

    一、首先要找到匹配的.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

    相关文章

      网友评论

      • Guomingjian:不能写详细点吗????基地址截个图,怎么来,这才是关键
      • 9b96d89b9432:如果程序基地址为0x0039488b 这个基地址值得是哪个?
        s2mh:程序每次运行的基地址不同,这个0x0039488b 也是在奔溃信息里面。

      本文标题:iOS使用dSYM文件和堆栈信息定位bug

      本文链接:https://www.haomeiwen.com/subject/rgbrrttx.html