Crash日志分析
2016-07-08 11:18
197 查看
从Crash文件出发解决bug的一般步骤,分三步:
a, 获取设备上的崩溃日志。
b, 分析崩溃日志,找到报错位置(定位到函数和代码行数)。
c, 打开代码,改bug。
1, 获取设备日志
1. 在可以获取到运行app的手机,或者用户配合导出日志的情况下。可以将设备连接到电脑,然后与电脑上的iTunes同步,崩溃日志会同步到电脑上的指定文件夹。(上面博客有指明)
2. 在可以直接获取到运行app的手机的情况下。可以将设备连接到电脑,然后打开xcode软件,选择Window->Devices,然后可以在xcode中查看设备上的所有崩溃日志。
3. 在app已经上线的情况下,可以通过iTunes Connect获取用户的崩溃日志。
2, 解析日志
了解崩溃日志来源之后,提取对应项目崩溃的.crash文件,解析日志需要4样东西:1. 第一步中提取到的.crash文件。2. symbolicatecrash二进制文件。3. dSYM文件。4. app文件
2.1 在命令行输入下面的命令获取symbolicatecrash二进制文件,获取到路径后,copy一份出来
find /Applications/Xcode.app -name symbolicatecrash -type f
2.2 从Xcode Archive的二进制文件中找到.dSYM文件和.app文件copy一份出来
2.3 新建一个文件夹CrashReport,把上面提取到的4个文件放在该文件夹下面,一次运行下列命令
//命令行进入CrashReport目录 cd Desktop/CrashReport/ //配置环境变量 export DEVELOPER_DIR=/Applications/XCode.app/Contents/Developer //解析.crash文件 ./symbolicatecrash ./*.crash ./*.app.dSYM > symbol.crash
2.4 打开symbol.crash,发现和Xcode控制台崩溃日志是一样的了
2.5 改bug
参考资料(戳这里):
> iOS开发中善用日志记录工具
> Xcode崩溃日志分析工具symbolicatecrash用法
> 别用symbolicatecrash来解析crash Log了
> iOS调试之 crash log分析
> iOS应用的crash日志的分析基础
> 分析iOS Crash文件:符号化iOS Crash文件的3种方法
> iOS 应用Crash日志分析整理
> iOS Crash文件的解析(一)
> iOS Crash - 收集篇 iOS Crash - 解析篇 iOS Crash - 分析篇
> 漫谈iOS Crash收集框架
> Crash log符号化与调试信息
> Xcode7.3工具解析App崩溃日志(.crash文件)
> https://www.raywenderlich.com/33669/overview-of-ios-crash-reporting-tools-part-1
> https://www.raywenderlich.com/10209/my-app-crashed-now-what-part-1
> https://www.raywenderlich.com/10505/my-app-crashed-now-what-part-2
相关文章推荐
- 动态规划之线性动归
- 1、@Transient @[email protected]�射,ORM框架将忽略该属性; 如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient,否则ORM框架默认其注解为@B
- IT门户
- python中利用pdb单步调试
- 设计模式——观察者设计模式
- Spring常用注解
- Java 反射机制的理解
- WWW、HTTP、CGI
- MFC简单设置窗口可拖动区域
- PreparedStatement解决sql注入问题
- 向mysql数据库中插入大二进制文件和大文本
- fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h"”
- 数据类型变换uint8_t uint16_t等等
- 架构设计:系统间通信(17)——服务治理与Dubbo 中篇(分析)
- MVC 学习
- Spring 注释 @Autowired 和@Resource 的区别
- 哈夫曼树与哈夫曼编码
- fragment的注意事项
- qt sort编码的一点总结
- JS添加删除DIV的简单实例