美文网首页iOS高级iOS学习笔记程序员
iOS - 知道app内存地址,如何定位到代码的位置么

iOS - 知道app内存地址,如何定位到代码的位置么

作者: WhoJun | 来源:发表于2015-08-31 11:10 被阅读1909次

    大家都用友盟,shareSDK,蒲公英等工具记录 crash 信息。

    有些crash是一看就知道错误位置,也是有提示的。

    有些实在是看不懂是什么意思。

    以下用的是堆栈还原。

    例如:

    27 xxx 0x000000010013265c 0x10007c000 747100

    这什么玩意?你看得懂?

    那么苹果他只带的查看工具,就是用命令行查看地址位置。

    获取自己发布的.app文件。这个不难吧。

    把他放到桌面或者你比较好读取的地方。我喜欢放在桌面比较方便。

    在10.10.x苹果把symbolicate集成到命令行里面去了。

    把命令行的目录cd到.app文件的根目录去。

    最后一步确认 .app的版本是你crash出来的版本。如果不是是查不了的。

    如果不确定可以根据.app的uuid来确认版本是否匹配。

    在命令行输入:

    atos -arch arm64 -o <appName>.app/<appName> <地址>

    提示如下:

    ljjun$ atos -arch arm64 -o xxx.app/xxx 0x000000010013265c 

    -[WJDefine storeInDictionary:] (in xxx) (WJDefine.m:317)

    还有这些都是辅助效果,有些蛋疼的崩溃信息,靠这些还是不能测出来的。这样只是让你更可读。

    还是要靠自己的分析。

    最近在用腾讯出的 Bugly 分析,里面有详细介绍crash 捕获解析的完整过程视频,有兴趣可以看看。

    相关文章

      网友评论

      • 十一岁的加重:```objc

        哪来试试这个

        ```
      • LostAbaddon:代码可以放在代码块里。
        Markdown下就是这样:
        ```code_lang
        blablabla
        ```
        WhoJun:@ChronosTartaro 好的~谢谢

      本文标题:iOS - 知道app内存地址,如何定位到代码的位置么

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