iOS:崩溃统计工具Crashlytics的使用
发布日期:2021-08-16 20:25:36 浏览次数:2 分类:技术文章

本文共 1919 字,大约阅读时间需要 6 分钟。

一、介绍

 随着苹果在世界火热起来,移动端app的开发如火如荼,同时催生出了一批对app进行统计的开发工具,诸如:国内的友盟统计、国外的Flurry移动端统计、国外的Crashlytics统计等,Crashlytics已经被Twitter收购,就目前而言,很多开发者普通认为Crashlytics做的相当不错。其实,Crashlytics已经成为Fabric的一个功能子集,我们既可以使用Fabric客户端快速集成,也可以根据Fabric的官方文档去集成,集成体验非常友好,比较人性化。

官方文档集成方式链接:

 

二、配置fabric-crashlytics基本教程(客户端方式集成)

1. 注册账户(首先需要注册一个帐号,Crashlytics是免费使用的。更准确的来说是申请,因为它的流程跟普通注册流程有些不一样,要求输入邮箱地址、密码、用户名、公司名称等,然后进入排队审核状态,审核通过才会收到注册邮件)

网站介绍:

 注册地址:

注意:一般而言审核通过时间为几个小时或者1到2天不等甚至更快,我注册后很快就收到邮件了。顺便提一下,收到的邮件的署名是Fabric,而非Crashlytics。邮件如图:

2、注册后登录进入可以看到一些信息

例如我已经添加过的测试项目如图所示:

3、下载并安装Fabric客户端,使用客户端集成Crashlytics框架

Fabric工具包地址(下载需要付出积分哟):

例如安装成功后的截图:

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网站和客户端上就可以看到该项目的详细信息。

 

四、本人测试崩溃截图如下

 

本人原创,请尊重本人的辛苦,支持转载,转载时请注明出处:,希望对大家有帮助。

 

其他可供参考的链接:

转载于:https://www.cnblogs.com/XYQ-208910/p/6230908.html

转载地址:https://blog.csdn.net/weixin_30823001/article/details/95787587 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Spring 设值注入 构造注入 p命名空间注入
下一篇:iOS:UI简单的总结

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年03月28日 12时51分48秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

linux查看系统所有变量,Linux系统各指标命令 2019-04-21
linux打印机守护程序,linux下怎么编写守护程序呢? 2019-04-21
嵌入式linux 设置时间,time_clock控件应用,使用命令date -s 12:00:00手动设置时间后,时间就停住不走了,我在Ubuntu和嵌入式Linux平台都测试到了... 2019-04-21
linux 8086下编译,Ubuntu18.04/Linux下安装DosBox进行8086汇编 2019-04-21
linux监控windows,zabbix监控之linux及windows客户端安装配置 2019-04-21
linux中怎么卸载tree,Liunx系统命令中tree命令详解 2019-04-21
linux 网络音箱 混音6,Linux音频编程(三)混音器介绍 2019-04-21
node与mysql开源_node与mysql的相互使用————node+mysql 2019-04-21
python合并列表重新排序_python – 将两个已排序的列表合并为一个更大的排序列表... 2019-04-21
vbs用mysql语句查询数据库_vbs脚本实现window环境下的mysql数据库的备份及删除早期备份... 2019-04-21
mysql连接nginx_nginx四层负载均衡连接mysql 2019-04-21
mysql截取栏目字符_substring从指定字符串开始截取(图) 2019-04-21
python 函数参数前面两个星号_Python中参数前面一个星号两个星号(*参数,**参数)起什么作用呢?... 2019-04-21
python类属性初始化_Python类定义、属性、初始化和析构 2019-04-21
mysql构建url给scrapy_Python Scrapy从mysq填充起始url 2019-04-21
owdcloud mysql_MySQL在Ubuntu远程配置 2019-04-21
python基础装饰器_Python基础 装饰器及练习 2019-04-21
python导出csv不带引号的句子_不带双引号写入CSV文件 2019-04-21
python爬虫代码模板_Python:学习Python爬虫的第一天 2019-04-21
springboot获取原生js请求_springboot跳转原生html 2019-04-21