美文网首页
Android日志管理Logger框架的简单介绍

Android日志管理Logger框架的简单介绍

作者: DASH_1024 | 来源:发表于2019-05-05 20:30 被阅读0次

Android开发中,我们常常用到日志打印。利用系统的Log打印可以满足大部分需求,如果想使用起来更方便一般会在系统Log的基础上再进行封装。比如可以全局定义Tag,亦或是定义一个变量,控制Debug版本和Release版本的日志输出,这些都可以较好的提高开发效率。但开发中系统Log打印也有些明显的短板,比如说无法对Json数据和Xml数据格式化,还有超过一定的字数打印被截断。而我们今天要讲的Logger日志框架可以很好的解决这方面的问题。

简单使用

首先,添加依赖:

implementation 'com.orhanobut:logger:2.2.0'

进行初始化工作

FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder()
        showThreadInfo(false)  // (Optional) Whether to show thread info or not. Default true
        .methodCount(0)         // (Optional) How many method line to show. Default 2
        .tag("xyz")   // (Optional) Global tag for every log. Default PRETTY_LOGGER
        .build();
com.orhanobut.logger.Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));

初始化设置上述信息,显示如下:


log.png

初始化时,showThreadInfo用来控制是否显示线程信息,methodCount控制方法数的显示,这里分别设置为false和0,不显示这些信息。这个功能虽然很强大,可以看到很多日志信息,但项目开发过程中日志打印很多,如果每条日志都显示线程信息和方法信息,会显得很乱,反而影响开发效率。

调用打印方法

Logger.d("debug");
Logger.e("error");
Logger.w("warning");
Logger.v("verbose");
Logger.i("information");
Logger.wtf("wtf!!!!");
Logger.d("hello %s", "world");
Logger.d(MAP);
Logger.d(SET);
Logger.d(LIST);
Logger.d(ARRAY);
Logger.json(JSON_CONTENT);
Logger.xml(XML_CONTENT);

基本使用方法如上,也系统Log打印类似,使用起来很方便。
结合具体的开发来说,个人观点加了虚线框使日志显示更突出,但也额外暂用了很多打印空间,开发打印日志很多时反而显得很乱,所以在打印一些简单信息时推荐还是使用系统Log打印。这个框架非常好的一点是可以格式化输出Json数据,而且没有字数限制,不会截断打印信息。开发过程中有Json数据打印的地方使用该框架还是非常方便的。

Json打印效果如下:


json打印.png

总结

Json打印建议使用Logger日志框架,一般信息打印建议还是用系统Log打印。

相关文章

网友评论

      本文标题:Android日志管理Logger框架的简单介绍

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