iOS:崩溃统计工具Crashlytics的使用
一、介绍
随着苹果在世界火热起来,移动端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



注意:一般而言审核通过时间为几个小时或者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
iOS:崩溃统计工具Crashlytics的使用的更多相关文章
- iOS崩溃调试的使用和技巧总结
在iOS开发调试过程中以及上线之后,程序经常会出现崩溃的问题.简单的崩溃还好说,复杂的崩溃就需要我们通过解析Crash文件来分析了,解析Crash文件在iOS开发中是比较常见的. 现在网上有很多关于解 ...
- iOS开发工具篇-AppStore统计工具 (转载)
随着iOS开发的流行,针对iOS开发涉及的方方面面,早有一些公司提供了专门的解决方案或工具.这些解决方案或工具包括:用户行为统计工具(友盟,Flurry,Google Analytics等), App ...
- iOS开发工具篇-AppStore统计工具
本文转载至 http://mobile.51cto.com/hot-418183.htm 随着iOS开发的流行,针对iOS开发涉及的方方面面,早有一些公司提供了专门的解决方案或工具.这些解决方案或工具 ...
- iOS开发工具篇-AppStore统计工具
苹果官方的iTunes Connect提供的销售数据统计功能比较弱,例如只能保存最近30天的详细销售数据,界面丑陋, 无法查看App的排名历史变化情况等. 早有一些公司提供了专门的解决方案或工具.这些 ...
- [原创]App崩溃率统计工具推荐
[原创]App崩溃率统计工具推荐 1 友盟(推荐) 友盟是一款比较成熟的工具,同时也可以展示留存,日活,事件等. 2 Bugly 腾讯的bugly统计数据也算是比较早的,可惜后续维护比较弱,功能与 ...
- ios 75个工具
如果你去到一位熟练的木匠的工作室,你总是能发现他/她有一堆工具来完成不同的任务. 软件开发同样如此.你可以从软件开发者如何使用工具中看出他水准如何.有经验的开发者精于使用工具.对你目前所使用的工具 ...
- 转: iOS崩溃堆栈符号表使用与用途
转:http://bugly.qq.com/blog/?p=119 iOS崩溃堆栈符号化,定位问题分分钟搞定! 2015.3.16 腾讯Bugly 微信分享 最近一段时间,在跟开发者沟通过程中,萝 ...
- HotApp小程序统计,第一个专业的微信第三方小程序统计工具
1.什么是HotApp小程序统计 HotApp小程序统计是第一个微信第三方小程序统计工具,就像做android 和 ios开发的人知道友盟统计一样,小程序也需要有个统计工具. 通过这个工具,可以知道小 ...
- python 练习(一)代码统计工具的实现
最近部门成立了一个python学习小组,旨在让大家在做项目中开始成长起来,于是老大就给布置了第一个小任务:代码统计工具,具体的需求如下: 需求: . 能够统计指定目录下C++程序的代码行数. . C+ ...
随机推荐
- jsf初学解决faces 中文输入乱码问题
中文乱码,貌似在java里很常见,请看简单代码: 很简单的faces <div class="td-block"> <h:outputLabel class=&q ...
- C++静态库与动态库
C++静态库与动态库 这次分享的宗旨是--让大家学会创建与使用静态库.动态库,知道静态库与动态库的区别,知道使用的时候如何选择.这里不深入介绍静态库.动态库的底层格式,内存布局等,有兴趣的同学,推荐一 ...
- [Unity3D]Unity资料大全免费分享
都是网上找的连七八糟的资料了,整理好分享的,有学习资料,视频,源码,插件……等等 东西比较多,不是所有的都是你需要的,可以按 ctrl+F 来搜索你要的东西,如果有广告,不用理会,关掉就可以了,如 ...
- CodeForces 444C 分块
题目链接:http://codeforces.com/problemset/problem/444/C 题意:给定一个长度为n的序列a[].起初a[i]=i,然后还有一个色度的序列b[],起初b[i] ...
- HDU5288 OO’s Sequence
Problem Description OO has got a array A of size n ,defined a function f(l,r) represent the number o ...
- Wordpress 所有hoor列表
d 在插件加载的时候执行 wp_footer 加载页面底部时执行 admin_menu 加载管理员菜单时执行 wp_head 在body标签的开始添加html内容 after_setup_theme ...
- 深入浅出JMS(三)--ActiveMQ简单的HelloWorld实例
第一篇博文深入浅出JMS(一)–JMS基本概念,我们介绍了JMS的两种消息模型:点对点和发布订阅模型,以及消息被消费的两个方式:同步和异步,JMS编程模型的对象,最后说了JMS的优点. 第二篇博文深入 ...
- 为动态添加的元素,绑定click事件
全选和取消全选 $("#quanxuan").click(function(){ $("input[name='picCheck']").prop(" ...
- Linux查看进程PID信息
ps -ef|grep 进程名 可检索到具体进程PID以及启动命令行信息 ls -l /proc/进程ID Linux在启动程序时会在 /proc/PID 目录下以PID为名称创建一个文件存储相关进程 ...
- 一些关于Viewport与device-width的东西~
进行移动web开发已经有一年多的时间了,期间遇到了一些令人很困惑的东西.比如: 我们经常使用的<meta name="viewport" content="widt ...