介绍一款安卓开发优雅的日志log框架_Logger

230 阅读1分钟

项目地址:github.com/orhanobut/l…

实现功能:

  1. 线程的信息
  2. 类的信息
  3. 方法的信息
  4. 格式打印json、xml等
  5. 点击链接跳转到源码打印处

实现效果:

这里写图片描述

初始化和关闭以及保存日志到SD卡

在Application的OnCreate方法中:

//      以下是打印自定义日志到控制台
        FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder()
//              .showThreadInfo(false)  // 是否选择显示线程信息,默认为true
//              .methodCount(0)         // 方法数显示多少行,默认2行
//              .methodOffset(7)        // 隐藏方法内部调用到偏移量,默认5
//              .logStrategy(customLog) // 打印日志的策略,默认LogCat
                .tag("MyCustomTag")   // 自定义TAG全部标签,默认PRETTY_LOGGER
                .build();

        Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy){
            @Override
            public boolean isLoggable(int priority, String tag) {
                return BuildConfig.DEBUG;
//              return LogUtil.isDebug;
            }
        });
//      以下是保存自定义日志
        FormatStrategy formatStrateg = CsvFormatStrategy.newBuilder()
                .tag("custom")
                .build();
        Logger.addLogAdapter(new DiskLogAdapter(formatStrateg));

具体使用就常规调用,参考作者写的文档就行。
这里需要说明的是,CsvFormatStrategy保存日志到本地sd卡中是在根目录下一个logger文件,是.cvs文件,这个文件的生成并不受项目中logger关闭的影响,就是说你关闭了log,只是控制台不再打印,但是日志文件还是会打印保存在手机的sd卡中的。