美文网首页
ZCrash的使用

ZCrash的使用

作者: 郑志伟vv | 来源:发表于2019-10-10 10:59 被阅读0次

该库主要用于抓取程序异常崩溃信息并存储到本地,便于测试程序崩溃时,容易查找问题。
该库还具有在本地文件打印log信息,方便在调试的时候查看开发中产生的信息。

之前在开发阶段中抓取异常崩溃信息一直使用的腾讯的Bugly,但是在使用过程中发现好多时候异常崩溃信息报不上去,一旦测试无法复现的时候,就无从查看该异常崩溃信息,但是有时候碰到异常崩溃但是也无从下手,所以就写了一个本地缓存异常的框架。

github的地址:https://github.com/zzw8421/ZCrash

Zcrash的集成与使用

1.在build.gradle(app)中引用
引用

在dependencies 添加 :
implementation 'com.zzw.zcrash:zcrash:1.0.1'
如果出现引用失败的问题,请查看build.gradle(项目)中是否添加了Jcenter库。

Jcenter.png
2.在Application中初始化

在自己自定义的applicationh中添加一下代码,初始化Zcrash。
ZCrashHelper.create(this);
如果需要使用自定义配置:
请实例化ZCrashOption该类。

方法 说明
setDirPath 设置Zcrash的根存储路径
setLogTAG 设置Zcrash在LogCat中打印信息的TAG
setCrashSolveType 设置发生异常后的处理方式(默认RESTARTAPP)
setPaintSpanCount 设置每个异常信息的间距
setIsPaintDetail 设置是否显示详细信息(暂未实现)
setShowTip 设置是否打印Toast提示崩溃问题(暂未实现)

CrashSolveType共有三种类型可供选择:

类型 说明
SHUTDOWNAPP 直接关闭该APP
RESTARTAPP 重新启动该APP(默认)
USERDEFINED 自定义处理(需设置回调接口)

自定义处理接口可通过该方法设置


image.png

自定义配置完成后在Application中通过该方法进行初始化:
ZCrashHelper.create(this, zCrashOption);

以上配置完成
当有异常触发的时候会在本地设置的根目录里面以项目包名创建一个文件夹。
若使用默认配置的话 路径为 /storage/emulated/0/crashLog/

image.png
image.png
其中 crash_2019_09_19文件则为异常抓捕信息记录的txt,该异常信息以天为单位存储在txt中,若当天中有多个异常则追加到该日期txt下。
异常信息捕捉如下:
image.png
提示

如果想在手机端查看异常信息可以下载一个ES文件浏览器进行查看。
或者使用abd命令 导出在电脑端查看。
adb pull /storage/emulated/0/crashLog C:\Users\zzw\Desktop
使用时将路径修改为自己设置的路径。

ZLog的使用

ZLog主要是用来在本地存储Log的,主要用于后期测试在测试APP时无法在LogCat中打印日志,所以可以将一些重要日志打印到本地并持久化存储,便于后期查看和追踪问题。

初始化

在自定义的application中通过一下代码进行ZLog的初始化
ZLogHelper.init(this);
由于比较懒直接使用了ZCrash中的一些配置,所以请在初始化的时候一定在ZCrash的初始化后面进行。

使用

ZLog.v("MainActivity", "这是一条用来测试静态类的Log");

image.png
本地打印log跟在LogCat上打印log使用基本一致,打印后会存储在ZCrash中的配置的路径中的TAG文件夹中,以打印时的 TAG进行创建文件
image.png
具体打印出来的信息如下:
image.png
包含打印时间,打印级别 ,在代码中的位置和输出的Log信息。

相关文章

  • ZCrash的使用

    该库主要用于抓取程序异常崩溃信息并存储到本地,便于测试程序崩溃时,容易查找问题。该库还具有在本地文件打印log信息...

  • iconfont的使用(下载使用)

    1、下载文件 2、在生命周期中引入项目 beforeCreate () { var domModule = ...

  • Gson的使用--使用注解

    Gson为了简化序列化和反序列化的过程,提供了很多注解,这些注解大致分为三类,我们一一的介绍一下。 自定义字段的名...

  • 记录使用iframe的使用

    默认记录一下----可以说 这是我第一次使用iframe 之前都没有使用过; 使用方式: 自己开发就用了这几个属...

  • with的使用

    下面例子可以具体说明with如何工作: 运行代码,输出如下

  • this的使用

    什么是this? this是一个关键字,这个关键字总是返回一个对象;简单说,就是返回属性或方法“当前”所在的对象。...

  • this的使用

    JS中this调用有几种情况 一:纯粹的函数调用 这是函数的最通常用法,属于全局性调用,因此this就代表全局对象...

  • ==的使用

    积累日常遇到的编码规范,良好的编码习惯,持续更新。。。 日常使用==用于判断的时候,习惯性将比较值写前面,变量写后...

  • this的使用

    1.默认绑定,就是函数立即执行。 函数立即执行就是指向window,但是如果是node环境,就是指向全局conso...

  • %in% 的使用

    写在前面:From 生信技能书向量难点之一:%in% 难点 (1)== 与 %in% 的区别== 强调位置,x和对...

网友评论

      本文标题:ZCrash的使用

      本文链接:https://www.haomeiwen.com/subject/vnrructx.html