美文网首页
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