iOS 崩溃统计工具-Crashlytics
2017-03-01 本文已影响6510人
dy_zhang
Crashlytics 成立于2011年,是专门为移动应用开者发提供的保存和分析应用崩溃信息的工具。
使用 Crashlytics 的好处有:
1、Crashlytics 不会漏掉任何应用崩溃信息。在发生崩溃后,用户再次进入 APP 并联网情况下,日志自动上传。
2、Crashlytics 可以象 Bug 管理工具那样,管理这些崩溃日志。例如:Crashlytics 会根据每种类型的 Crash 的出现频率以及影响的用户量来自动设置优先级。对于每种类型的 Crash,Crashlytics 除了会像一般的工具提供 Call Stack 外,还会显示更多相关的有助于诊断的信息,例如:设备是否越狱,当时的内存量,当时的 iOS 版本等。对于修复掉的 Crash 日志,可以在 Crashlytics 的后台将其关掉。
3、Crashlytics 可以每天和每周将崩溃信息汇总发到你的邮箱。
4、提供在线的报告,解释崩溃原因,甚至能给出是哪一行代码导致的崩溃。
使用 Crashlytics
Crashlytics 的服务是免费提供的,在官网注册账号。

需要提供一个邮箱进行验证。( Crashlytics 向这个邮箱发送崩溃信息)

填好信息后 Send Confirmation ,会收到一封验证邮件。验证通过后登录账号

在使用 Crashlytics 前需要对原有的 Xcode 工程进行配置,Crashlytics 有个 Mac 端的 App 来帮助进行配置,所以,在配置前先需要去下载该应用。应用下载后,运行应用并登录帐号

选择要增加 Crashlytics 的工程

选择工程后点 Next ,会显示插件供安装,因为是需要做崩溃统计,所以选择安装 Crashlytics

然后会提示为工程增加一个 Run Script,先将第2条的内容 Copy

打开工程将 Copy 的内容粘贴到 Shell 中


command + B 编译,接着 Crashlytics 应用会提示你将 Crashlytics 相关的 framework 拖到工程中

添加的 framework 如下

注:除了拖入添加 framework 外也可以使用 Pods 安装
pod 'Fabric'
pod 'Crashlytics'
framework 添加后 Crashlytics 应用会提示添加代码

将代码 Copy 添加到工程中
#import "AppDelegate.h"
#import <Fabric/Fabric.h>
#import <Crashlytics/Crashlytics.h>
@interface AppDelegate ()
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
[Fabric with:@[[Crashlytics class]]];
return YES;
}
Build Settings 里修改设置用于调试和发布,确保在崩溃后启动应用程序,以便上传崩溃信息。

点击 Crashlytics 应用 Next 进行下一步,按照提示先 Clean 再运行

运行

按 Done 返回上级,这里提供了强制崩溃和获取用户信息两个功能

到这里 ** Crashlytics** 的基本使用已经介绍完了,下面通过演示看看** Crashlytics** 收集崩溃的效果。点击上图中 Force a Crash 后的 Get Code 获取 ** Crashlytics** 应用提供的强制崩溃的代码,复制粘贴到工程里(也可以自己写)

然后根据 ** Crashlytics** 应用提示操作

如果顺利,你的邮箱将会收到 Fabric 反馈的崩溃信息邮件

点击 Learn more 可以查看详细的崩溃信息

结语
Crashlytics 的官方文档也非常健全,如果你在使用中遇到任何问题,可以上去查看详细的文档。
参考文章:唐巧-iOS开发工具——统计Crash的工具 Crashlytics