Logutil日志工具



import android.text.TextUtils;
import android.util.Log;

import java.util.logging.Level;

/**
 * @author : 
 * @date : 2019/9/5 17:11
 * desc   : 日志工具
 * version: 1.0
 */
public class LogUtil {
    public static String tagPrefix = "";
    public static boolean showV = true;
    public static boolean showD = true;
    public static boolean showI = true;
    public static boolean showW = true;
    public static boolean showE = true;
    public static boolean showWTF = true;

    /**
     * 获取Tag
     * @return tag
     */
    private static String generateTag(StackTraceElement stackTraceElement) {
        String callerClazzName = stackTraceElement.getClassName();
        callerClazzName = callerClazzName.substring(callerClazzName.lastIndexOf(".") + 1);
        return tagPrefix == null || "".equals(tagPrefix) ? callerClazzName : tagPrefix + "_" + callerClazzName;
    }

    /**
     * 获取msg 默认格式 (M:methodName L:lineNum):
     * @return msg
     */
    private static String generateMsg(StackTraceElement stackTraceElement,String msg) {
        return "(M:"+
                stackTraceElement.getMethodName() +
                " L:" +
                stackTraceElement.getLineNumber() +
                "): " +
                msg;
    }

    public static void v(String msg) {
        if (showV) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.v(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg));
        }
    }

    public static void v(String msg, Throwable tr) {
        if (showV) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.v(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg),tr);
        }
    }

    public static void d(String msg) {
        if (showD) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.d(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg));
        }
    }

    public static void d(String msg, Throwable tr) {
        if (showD) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.d(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg),tr);
        }
    }

    public static void i(String msg) {
        if (showI) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.i(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg));
        }
    }

    public static void i(String msg, Throwable tr) {
        if (showI) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.i(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg));
        }
    }

    public static void w(String msg) {
        if (showW) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.w(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg));
        }
    }

    public static void w(String msg, Throwable tr) {
        if (showW) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.w(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg),tr);
        }
    }

    public static void e(String msg) {
        if (showE) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.e(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg));
        }
    }

    public static void e(String msg, Throwable tr) {
        if (showE) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.e(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg),tr);
        }
    }

    public static void wtf(String msg) {
        if (showWTF) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.wtf(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg));
        }
    }

    public static void wtf(String msg, Throwable tr) {
        if (showWTF) {
            StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3];
            Log.wtf(generateTag(stackTraceElement),generateMsg(stackTraceElement,msg),tr);
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值