一个简单的Log日志输出小工具

1,115 阅读1分钟

一个简单的log输出工具。可以输出调用栈信息,输出边框,输出实体类的信息。

效果图

带有栈信息的日志输出。

实体类输出。

集成方法

1.使用本库需先在project级别的build.gradle中添加如下代码

allprojects {
        repositories {
            ...
            maven { url 'https://www.jitpack.io' }
        }
    }

2.在module级别build.gradle添加依赖
compile 'com.github.rgf456:LogApplication:1.0.9'

3.初始化配置
目前支持的配置包括:

  1. 是否输出日志(默认在debug输出,release不输出)
  2. 是否输出边框(默认不输出)
  3. 是否输出栈信息(默认输出)
  4. 设置输出标签(默认是包名)
    LogConfig logConfig = new LogConfig.Builder()
                 .isDebug(true)
                 .outputRect(true)
                 .outputStackInfo(true)
                 .build();
    4.应用配置
    LogUtil.init(logConfig);
    然后就可以输出日志了。

这里有一个小技巧可以自定义是否输出日志
在buildConfig文件中可以根据当前打包版本(debug还是release)来设置是否输出日志。

5.输出实体类

只需在声明类时添加@LogEntity即可

@LogEntity
public class UserName {
    private String user;
    private String address;

    public UserName(String user, String address) {
        this.user = user;
        this.address = address;

在方法中调用:

LogUtil.object(new UserName("saka","123"));

注意:本方法只能输出非静态域,假如输出静态域,需要在声明域的时候添加LogField注解。

最后声明一点,由于本方法调用了反射,不适合在有性能要求的时候使用。没有给域设置值的时候会直接输出null,假如域是一个实体类,会调用实体类的tostring方法。