LogUtil【实现*的控制日志的打印的封装类】

时间:2023-03-08 21:18:19
LogUtil【实现*的控制日志的打印的封装类】

版权声明:本文为HaiyuKing原创文章,转载请注明出处!

前言

主要用于控制项目开发和上线阶段日志的打印。

效果图

暂不需要。

代码分析

在LogUtil类中声明代表不同日志级别的常量值(VERBOSE、DEBUG、INFO、WARN、ERROR、NOTHING)以及一个用来控制打印的日志级别的常量(LEVEL);

通过设置LEVEL的常量值,用来控制打印什么级别以上的日志内容。

使用步骤

一、项目组织结构图

LogUtil【实现*的控制日志的打印的封装类】

注意事项:

1、导入类文件后需要change包名以及重新import R文件路径

2、Values目录下的文件(strings.xml、dimens.xml、colors.xml等),如果项目中存在,则复制里面的内容,不要整个覆盖

二、导入步骤

将LogUtil文件复制到项目中即可。

package com.why.project.logutildemo.util;

import android.util.Log;

/**
* Used 实现*的控制日志的打印--《第一行代码》 郭霖
* 只有当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;
/**控制想要打印的日志级别
* 等于VERBOSE,则就会打印所有级别的日志
* 等于WARN,则只会打印警告级别以上的日志
* 等于NOTHING,则会屏蔽掉所有日志*/
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.e(tag, msg);
}
} }

三、使用方法

开发阶段:设置LogUtil中的LEVEL==VERBOSE;

public static final int LEVEL = VERBOSE;

上线阶段:设置LogUtil中的LEVEL==NOTHING;

public static final int LEVEL = NOTHING;

调用方法:

LogUtil.w(TAG,"测试LogUtil打印日志");

混淆配置

参考资料

参考《第一行代码》 郭霖著

项目demo下载地址

https://github.com/haiyuKing/LogUtilDemo