iOS崩溃信息符号化

原创 2015年11月21日 15:57:53

iOS崩溃信息符号化

一、获取崩溃信息的方法

获取崩溃信息的方法主要有以下几种:

  1. 如果可以拿到崩溃的机器,将崩溃信息连击到Xcode, 找到device logs 就可以得到崩溃日志。
  2. 可以从苹果开发者网站中看到官方的崩溃上报,但是局限于用户允许上报。如果是苹果开发者,在新版本的Xcode中,可以直接获取到崩溃日志。
  3. 使用三方崩溃统计或者自己捕获崩溃信息,并上传到后台。
二、了解崩溃信息

随便在xcode里找到的一个崩溃log

我们可以从图中看到一些基本的信息如:使用设备的型号、崩溃的进程、版本号、架构、崩溃时间、崩溃类型、还有一大推我们不认识的十六进制的数。
这些信息足够多,足够丰富但是对于不是机器的我们来说,并没有什么意义,想要找到到底为什么崩溃了,我们得把这些信息转换成我们认识的类的名称、函数名称、代码行号。

三、崩溃信息的符号化

有了崩溃信息,我们还需要有对应崩溃版本Xcode 编译时产生的.app 文件和.dSYM文件。每次编译都会产生产生这些文件,我们可以在Xcode 的目录下找到。

符号化的方法主要有三种
1. 使用Xcode自动符号化
2. 使用 Symbolicatecrash 符号化,这是Xcode自带的分析工具。使用方法为 Symbolicatecrash + xx.crash + xx.dSYM + > + result.crash。 Symbolicatecrash 使用过程中可能有一些问题,网上有很多大神有详尽的解决办法,这里就不多说了。
3. 使用xcrun atos 符号化。这种工具的使用方法有很多,我只列出一种亲测可用的,方法为
xcrun atos -arch armv7s -o xxx.app/xxx -l 0xe2000 0x00110373
其中 armv7s为我们在崩溃信息中看到的架构,xxx.app为编译产生的.app文件 0xe2000 为崩溃线程中 + 号前面的地址 0x00110373 为 0xe2000 前边的地址。

其中前两种方法需要官方崩溃日志的格式,也就是说需要完整的.crash 文件,最后一种可以用于没有完整的崩溃日志时使用的方法。需要一行一行的符号化,会写脚本的可以写个脚本来完成一次性符号化。

教你如何对ios崩溃(crash)日志做符号化

一、场景         客户端的开发流程都相似,如android,搞ios开发就要不停地发版本,随之而来的就是各种版本的崩溃日志(称为crash log)。如果不能好好地管理,那么开发人员很快就会...
  • Weiguang_123
  • Weiguang_123
  • 2016年02月23日 20:28
  • 13070

分析iOS Crash文件:符号化iOS Crash文件的3种方法(转修)

上传crash文件 你的应用应当有模块能够在应用程序crash的时候上传crash信息。 要么通过用户反馈拿到crash文件,要么借助自己或第3方的crash上传模块拿到crash文件。 ...
  • lovenjoe
  • lovenjoe
  • 2014年11月11日 16:41
  • 1936

iOS如何查看崩溃信息

图片在APP中占有重要的角色,对图片做好缓存是重要的一项工作。 [TOC] 理论 不喜欢理论的可以直接跳到下面的Demo实践部分 缓存介绍 缓存按照保存位置可以分为两类:内存缓存、硬盘缓存(FMDB、...
  • lishichao706
  • lishichao706
  • 2016年03月23日 11:30
  • 630

分析iOS Crash文件:符号化iOS Crash文件的3种方法

文章转载自:http://wufawei.com/2014/03/symbolicating-ios-crash-logs/ HOMEABOUTGUESTBOOKCATEGO...
  • chaoyuan899
  • chaoyuan899
  • 2014年03月24日 09:39
  • 5256

iOS崩溃堆栈信息的符号化解析

最近一段时间,在iOS开发调试过程中以及上线之后,程序经常会出现崩溃的问题。简单的崩溃还好说,复杂的崩溃就需要我们通过解析Crash文件来分析了,解析Crash文件在iOS开发中是比较常见的。但在跟开...
  • crash163
  • crash163
  • 2016年08月24日 10:59
  • 2860

Xcode:崩溃堆栈符号化,定位崩溃

Xcode:崩溃堆栈符号化,定位崩溃
  • wangyanchang21
  • wangyanchang21
  • 2016年04月15日 15:54
  • 2206

ios 崩溃日志 符号化

1.准备测试代码 在applicationDidFinishLaunching() 方法里 调用 setPosffffff(nullptr);  这样必定会出现崩溃,因为 node为空 去调用setP...
  • lovehappy108
  • lovehappy108
  • 2016年05月12日 13:27
  • 1170

iOS应用崩溃(二)——符号化解析

一、获取崩溃信息 1、使用友盟、百度等第三方崩溃统计工具; 2、自己实现应用内崩溃收集,并上传服务器; 3、Xcode-Devices内直接查看某个设备的崩溃信息; 4、使用苹果提供的Crash崩溃收...
  • xiaoxiaobukuang
  • xiaoxiaobukuang
  • 2015年12月27日 00:37
  • 595

iOS崩溃日志分析

崩溃日志的产生 iOS中运行App过程中如果发生程序崩溃,会生成一个崩溃日志文件。这个文件会保存的特定系统目录下,扩展名是crash。当手机连接到iTunes时,会将该文件同步到电脑上。 在Mac...
  • camel20
  • camel20
  • 2013年02月01日 09:04
  • 7331

iOS .ips(crash)崩溃报告文件分析

对于我们iOS开发者来说,最心碎的事莫过于苹果审核一个星期后上架app store,而第二天就报出闪退bug。   iOS app的所有崩溃记录都会记录在设备上,所以对于和我一样没有集成...
  • FocusOnLovingFreedom
  • FocusOnLovingFreedom
  • 2017年06月13日 15:59
  • 435
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS崩溃信息符号化
举报原因:
原因补充:

(最多只允许输入30个字)