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

大家都用友盟,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 捕获解析的完整过程视频,有兴趣可以看看。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容