你还没用Logger?用了他我才知道屌
Logger
简单,漂亮,强大的android日志
配置
下载
implementation 'com.orhanobut:logger:2.2.0'
初始化
Logger.addLogAdapter(new AndroidLogAdapter());
使用
Logger.d("hello");
输出

属性
Logger.d("debug");
Logger.e("error");
Logger.w("warning");
Logger.v("verbose");
Logger.i("information");
Logger.wtf("What a Terrible Failure");
支持字符串格式参数
Logger.d("hello %s", "world");
支持集合(仅适用于调试日志)
Logger.d(MAP);
Logger.d(SET);
Logger.d(LIST);
Logger.d(ARRAY);
Json和Xml支持(输出将处于调试级别)
Logger.json(JSON_CONTENT);
Logger.xml(XML_CONTENT);
高级用法
FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder()
  .showThreadInfo(false)  // (可选)是否显示线程信息。默认为 true
  .methodCount(0)         // (可选)要显示的方法行数。默认为 2
  .methodOffset(7)        // (可选)隐藏内部方法调用直到偏移量。默认值5
  .logStrategy(customLog) // (可选)将日志策略更改为打印输出。默认LogCat
  .tag("My custom tag")   // (可选)每个日志的全局标记。默认PRETTY_LOGGER
  .build();
Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));
日志开启
日志适配器通过检查此功能来检查日志是否应打印。
如果要禁用/隐藏输出日志,请重写isLoggable'方法。true会打印日志消息,false` 会忽略它。
Logger.addLogAdapter(new AndroidLogAdapter() {
  @Override public boolean isLoggable(int priority, String tag) {
    return BuildConfig.DEBUG;
  }
});
将日志保存到文件
//TODO: 稍后将添加更多信息
Logger.addLogAdapter(new DiskLogAdapter());
将自定义标记添加到Csv格式策略
FormatStrategy formatStrategy = CsvFormatStrategy.newBuilder()
  .tag("custom")
  .build();
Logger.addLogAdapter(new DiskLogAdapter(formatStrategy));
工作原理

更多
- 使用过滤器以获得更好的结果。或者你的自定义标签 
- 确保已禁用“环绕”选项 
- 也可以通过更改设置来简化输出。 

- Timber 集成// 将methodOffset设置为5以隐藏内部方法调用
 Timber.plant(new Timber.DebugTree() {
 @Override protected void log(int priority, String tag, String message, Throwable t) {
 Logger.log(priority, tag, message, t);
 }
 });
github地址:https://github.com/orhanobut/logger
下载地址:
master.zip
 
			