【iOS】Crash Log 文件分析

很多时候模拟器debug无法复现真机上的crash

因此需要打包安装到真机后,读取本地crash log文件分析

1、获取crash文件

<1>这里只介绍苹果官方同步软件iTunes的路径,将打包后的ipa文件通过iTunes安装到手机,进行crash复现操作,就会在以下路径生成crash log文件(其它同步软件也会有提供崩溃日志)

Mac OS X:~/Library/Logs/CrashReporter/MobileDevice

Windows XP:C:\Documents and Settings\Application Data\Apple computer\Logs\CrashReporter

Windows 7/Vista: C:\Users\计算机登录名\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice

<2>选择你测试的手机文件夹,找到测试日期对应crash文件



2、读取文件,打开文件后会看到如下内容


其实也是比较重要的内容,这里只做一个简述,让我们对怎样看crash log有个思路,因为crash有各种各样的原因,例子里并不能涵盖所有

<1>Exception Type:  EXC_CRASH (SIGABRT)

SIGABRT一般为无法找到对象

<2>Triggered by Thread:  21

也就是在第21个线程出现了crash,接着就将线程定位到第21个

<3>

一般来说app name后面会对应一些方法提示,也就是expect point,就可以按照方法名结合Exception Type去查一下该方法内的问题

但是我这个没有,于是定位到Thread 21 name:  Dispatch queue: com.tune.concurrentQueue这一行,说明是我在开启tune相关线程时出现了cash,因此需要在crash发生页面查找tune相关操作,然后进行排查。

这样就有了切入点,而不是无头苍蝇一般到处找问题

基本的思路就是这样了,希望能帮助到你,不对的地方还请指出

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、crash log的获取 当你的app 在手机上crash的时候,会在手机上自动生成一个崩溃日志,也就是我们说...
    He_Define阅读 60,780评论 37 148
  • 当我们把APP的安装包发给用户,或者APP已经上线了,用户安装后使用出现了Crash,而且用户距离你很远很远,远到...
    晨寂阅读 12,667评论 0 17
  • 当在非调试状态下,我们用真机测试app,crash或者说闪退是一件很常见的事,最让我们开发人员头疼的是,自己在开发...
    naruto_yuqin阅读 13,727评论 1 30
  • crash来源 iOS设备上的应用闪退时,操作系统会生成一个崩溃报告,也叫崩溃日志,保存在设备上。 崩溃日志上有很...
    WolfTin阅读 4,316评论 0 0
  • 《西游伏妖篇》中一改往常对遁入佛门清心寡欲唐三藏性格的刻画,把他铸造成一个有血有肉的痴情郎。 段小姐是他心中念念不...
    默默幽幽阅读 3,873评论 0 0