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+ ...
随机推荐
- 安天AVLTeam送福利喽~~
#福利来了# duang~duang~duang~ 安小天帮你辨别短信真伪!!! 是不是经常收到真假难辨的[疑似诈骗短信]是真的?是假的? 傻傻分不清楚 现在不用怕啦!!! 遇到这种情况,只需手机截 ...
- redis-3.2.5 make 报错
make[]: Entering directory `/usr/local/src/redis-/src' CC adlist.o In file included : zmalloc.h::: e ...
- 参数max_allowed_packet
通信信息包是发送至MySQL服务器的单个SQL语句,或发送至客户端的单一行. 当MySQL客户端或mysqld服务器收到大于max_allowed_packet字节的信息包时,将发出“信息包过大”错误 ...
- node 关键点总结
1.I/O密集的地方尽量不要用require.(require是同步I/O操作) eg:正在运行一个HTTP服务器,如果在每个进入的请求上都用了require,就会遇到性能问题.所以通常在程序最初加载 ...
- http协议和浏览器缓存问题
HTTP是超文本传输协议. HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型.HTTP是一个无状态的协议.
- Spring--通过注解来配置bean【转】
Spring通过注解配置bean 基于注解配置bean 基于注解来配置bean的属性在classpath中扫描组件 组件扫描(component scanning):Spring能够从classpat ...
- Java动态、重写 理解
相关类: class A ...{ public String show(D obj)...{ return ("A and D"); } public String show(A ...
- iSight集成Adams/View:Simcode
虽然iSight有Adams/View接口,但对Adams的版本有限制.下面使用iSight的simcode,就可以支持任意版本的Adams了. Adams模型如下: 1. 编写cmd文件 file ...
- 搭把手教美工妹妹如何通过升级SSD提升电脑性能
-----by LinHan 不单单适用于妹子,我这名的意思的妹子也能看懂. 以下教程依据实践和部分互联网资料总结得出,向博客园, CSDN的前辈们致谢:同时,如有说的不正确或有不到位的地方,麻烦指出 ...
- css中的四个不同的position设置
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...