Android自带的日志工具已经非常强大了,但是在打印日志的控制方面还做的不够好。
当我们编写一个比较大的项目时,需为了方便调试会写很多的日志,项目完成后调试的日志的代码肯定要删掉,但是到了维护的时候又得写日志代码,这样就很麻烦。最好的办法就是在程序上线就把日志屏蔽掉。
定制日志工具LogUtil
- 首先定义六个常量,依次递增,前五个对应Android中的日志类型,第六个用于屏蔽日志。
- 定义常量level,将level的值定义为上面6个常量之一
- 提供五个方法,对应Android中的五个日志方法。每个方法中加入if判断,只有当level小于等于日志级别的时候才会打印日志。
- (当我们日常开发是将level设置为VERBOSE,即打印所有的日志)
- (当项目正式上线的时候将level设置为NOTHING,这样就会把所有的日志屏蔽掉)
public class LogUtil {
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 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.e(tag, msg);
}
}
}