定制我们自己的日志工具(LogUtil)之工具类一

开发中我们使用Android中自带的日志工具虽然非常强大,但是也不说完全没有缺点,

例如在打印方面控制的就做的不够好如下:

1:编写大型项目的时候,期间为了方便调试,很多地方打印了大量的日志文件,项目完成后想要

取消打印因为如果不取消不仅会降低我们的程序运行的效率,而且可能会把机密性的数据泄露出去

2:打印的代码不好查找,删除非常麻烦,特别是大型项目,动辄几十万行代码。

3:想要实现开发阶段打印,项目上线后去掉打印

解决这个问题很简单,只需要我们定义一个LogUtil类(直接上代码如下):

/**
 * Created by acer-pc on 2018/7/21.
 */

public class LogUtils {
    public static final int VERBOSE = 1;
    public static final int DEBUG = 2;
    public static final int INFO = 3;
    public static final int WARN = 4;
    public static final int ERROR = 5;
    public static final int NOTHING = 6;
    public static final int level = VERBOSE;

    public static void v(String tag, String msg) {
        if (level <= VERBOSE) {
            Log.v(tag, msg);
        }
    }

    public static void d(String tag, String msg) {
        if (level <= DEBUG) {
            Log.d(tag, msg);
        }
    }

    public static void i(String tag, String msg) {
        if (level <= INFO) {
            Log.i(tag, msg);
        }
    }

    public static void w(String tag, String msg) {
        if (level <= WARN) {
            Log.w(tag, msg);
        }
    }

    public static void e(String tag, String msg) {
        if (level <= ERROR) {
            Log.v(tag, msg);
        }
    }

}

  这样我们就把工具类创建好了,之后再项目中我们可以像使用普通的日志工具一样使用LogUtil

比如打印一行DEBUG级别的日志就可以这样写:

     LogUtil.d("TAG", "debug log");

就可以了,等我们的项目上线了,或者不需要打印大量的日志了,我们只需要修改level的值,比如

把level等于VERBOSE就可以把所有的日志都打印出来,让level等于WARN就可以只打印警告以上级别的日志,

使用这种方法后,上面的问题基本上都解决了,我们只需要在开发阶段将level指定成VERBOSE,当

项目上线后将level指定成NOTHING就可以了。

猜你喜欢

转载自blog.csdn.net/qq_42618969/article/details/81142521