iOS Crash 日志分析

iOS崩溃日志分析关键在于符号化,通过atos工具结合dsym文件将未符号化的日志转换为可读形式。本文介绍了如何使用Xcode和symbolicatecrash脚本进行符号化,并提供了一个Crash调用堆栈的符号化示例,揭示了崩溃发生在TBSNSPagesContainerView的subviewLayoutPage方法中。
摘要由CSDN通过智能技术生成

未符号化的崩溃日志就象一本天书,看不懂,更别谈分析崩溃原因了。所以我们在分析日志之前,要把日志翻译成我们可以看得懂的文字。这一步我们称之为符号化。

符号化的两种方式:
1.利用Xcode符号化
2.利用symbolicatecrash脚本符号化

其实这两种分析方式都使用了同一个工具符号化:atos
atos是苹果提供的符号化工具,在Mac OS系统下默认安装。
使用atos符号化需要dsym文件。dsym文件是在编译工程的时候生成的,可以在Xcode Organizer的Archives标签栏下找到所有已归档的应用文件。它保存了编译过程的详细信息,其中包括符号信息。

注意: 你必需同时保留应用二进制文件和.dSYM文件才能将崩溃日志完整符号化。每次提交到iTunes Connect的构建都必需归档。
.dSYM文件和二进制文件是特定绑定于每一次构建和后续构建的,即使来自相同的源代码文件,每一次构建也与其他构建不同,不能相互替换。
如果你使用Build 和 Archive 命令,这些文件会自动放在适当位置。 如果不是使用Build 和 Archive命令,放在Spotlight能够搜索到的位置(比如Home目录)即可。

下面我们用atos对一条Crash进行符号化
还是看下面的例子:

1.进程信息

Incident Identifier: E4201F10-6F5F-40F9-B938-BB3DA8ED7D50
CrashReporter Key: TODO
Hardware Model: iPhone4,1
Process: Taobao4iPhone [

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值