一、介绍
随着苹果在世界火热起来,移动端app的开发如火如荼,同时催生出了一批对app进行统计的开发工具,诸如:国内的友盟统计、国外的Flurry移动端统计、国外的Crashlytics统计等,Crashlytics已经被Twitter收购,就目前而言,很多开发者普通认为Crashlytics做的相当不错。其实,Crashlytics已经成为Fabric的一个功能子集,我们既可以使用Fabric客户端快速集成,也可以根据Fabric的官方文档去集成,集成体验非常友好,比较人性化。
官方文档集成方式链接:https://fabric.io/kits/ios/crashlytics/install
二、配置fabric-crashlytics基本教程(客户端方式集成)
1. 注册账户(首先需要注册一个帐号,Crashlytics是免费使用的。更准确的来说是申请,因为它的流程跟普通注册流程有些不一样,要求输入邮箱地址、密码、用户名、公司名称等,然后进入排队审核状态,审核通过才会收到注册邮件)
网站介绍:http://try.crashlytics.com
注册地址:https://get.fabric.io
注意:一般而言审核通过时间为几个小时或者1到2天不等甚至更快,我注册后很快就收到邮件了。顺便提一下,收到的邮件的署名是Fabric,而非Crashlytics。邮件如图:
2、注册后登录进入可以看到一些信息
例如我已经添加过的测试项目如图所示:
3、下载并安装Fabric客户端,使用客户端集成Crashlytics框架
Fabric工具包地址(下载需要付出积分哟):http://download.csdn.net/detail/qq_29587351/9723788
例如安装成功后的截图:
4、用之前注册的账号登录开始集成之旅
5、登录客户端可以看到公司等信息(OCDemo是我按照官方文档集成的,使用客户端之前已经存在),点击New App会列出电脑里你之前创建过所有的工程选项。
6、 选择某个工程然后next后会显示插件供安装,根据自己需要去选择安装
7、因为是需要做app崩溃统计,所以我选择安装Crashlytics组件。
7.1 复制需要添加到项目中的编译脚本指令
7.2 打开xcode中对应的工程项目,添加New Run Script Build Phase
7.3 将复制的编译脚本指令粘贴进去
7.5 上面的步骤操作完了后编译一下,就出现了下图,其实这个就是你需要的框架,你接下来要做的就是将这个蓝色的文件包拖入到选择的工程下,即完成客户端集成
8、用鼠标点击这个蓝色的文件包,然后拖入到选择的工程下,拖拽后出现如下图,实质上就是将框架集成到了项目下
9、按照右边图的提示,将其提示的代码拷贝添加到自己的AppDelegate中
10、点击Next,出现如图,接着按照提示进行,此处在等待验证安装(等待下面的第11步操作)
11、先按Command+B进行Build编译,然后按Command+R运行项目,发现没有报错,集成成功,ok了,点击Done
此处plist文件中的设置是自动生成的,关联app的APIKey
测试崩溃时需要设置此处,调试信息格式是“带dSYM文件的DWARF”,用于调试和发布确保在崩溃后启动应用程序,以便可以上传崩溃
12、点击Done后,返回到了上一级,此处另外提供了两个功能,分别是:演示app崩溃(强制崩溃)和获取用户信息
13、下面如果选择Force Crash强制app崩溃,它会提供比较详细的演示步骤,其实也是代码的复制和粘贴。复制和粘贴完代码后,你只需要跟着提供的5个步骤走下去即可演示崩溃效果:
本人在模拟器编译运行后的log如下,如果你的也是这样就没问题,然后停止模拟器,再一次从模拟器的home screen点击app打开进行演示崩溃即可
三、注意:
1、run时候部署到device真机上,模拟器可能不行。模拟器需要设置: [Crashlytics sharedInstance].debugMode = YES;
2、在集成这个project时有个小插曲,本来这个项目中是有使用cocoapods的,但在一开始使用cocoapods方式集成时居然失败了,原因是没有引用到fabric和crashlytics相关的library,后来使用xcode framework的方式集成才成功了。后来用cocoapods的方式集成另外一个项目,倒是一次过通过了。猜测有可能是在pod update时不同dependence之间有冲突。
3、集成完之后在Fabric网站和客户端上就可以看到该项目的详细信息。
四、本人测试崩溃截图如下
本人原创,请尊重本人的辛苦,支持转载,转载时请注明出处:http://www.cnblogs.com/XYQ-208910/p/6230908.html,希望对大家有帮助。
其他可供参考的链接:
http://blog.csdn.net/erictan_tjh/article/details/47669527
http://www.cnblogs.com/lisa090818/p/4283267.html