IOS crash log分析

此处不讨论具体的如何根据.dsym文件解析crash log的方式。

一、一般的崩溃

1.违反苹果的政策:启动、恢复、暂停或退出超时;

用户强制退出:

低内存退出:MemoryWarning;

2.程序中有bug

二、崩溃解析说明

1.MemoryWarning的崩溃比较特别,没有任何trace,标志性信息即某一条trace后面有“jettisoned”。

解决方法:

可用Allocations、Leaks Instruments 或VM Tracker Instrument来帮助检查。另外,解析内存警告的log时,里面每一个page代表4k byte;

2.Exception Codes

0x8badf00d:代表 watchdog timeout,主线程阻塞超时;

0xbad22222:resume太频繁?

0xdead10cc:死锁,程序在后台时占用了系统资源

0xdeadfa11:用户强制退出程序

3.Exception Type

EXC_CRASH (SIGABRT):一般是APP做了系统不支持的操作,例如给一个对象发送其没有实现的消息;

EXC_BAD_ACCESS (SIGSEGV):一般是APP进入了一种错误状态,大部分是内存问题;

另外需要注意的是:找到崩溃的线程,整个很重要,不是只有主线程才会崩溃

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。