日志打印工具类

来源:互联网 发布:淘宝举报假冒品牌 编辑:程序博客网 时间:2024/05/18 12:39

省时拷贝


android.util.Log封装,包含日志定位,效果:

点击跳转至指定位置

代码:

package com.realsmartcard.baselibrary;import android.util.Log;public class Logger {    private static int level = Log.DEBUG;    private static boolean debug = true;    public static void debug(String msg) {        if (!debug)            return;        if (level <= Log.DEBUG)            Log.d(createTag(), msg);    }    public static void debug(String msg, Throwable tr) {        if (!debug)            return;        if (level <= Log.DEBUG)            Log.d(createTag(), msg, tr);    }    public static void info(String msg) {        if (!debug)            return;        if (level <= Log.INFO) {            Log.i(createTag(), msg);        }    }    public static void info(String msg, Throwable tr) {        if (!debug)            return;        if (level <= Log.INFO) {            Log.i(createTag(), msg, tr);        }    }    public static void warn(String msg) {        if (!debug)            return;        if (level <= Log.WARN) {            Log.w(createTag(), msg);        }    }    public static void warn(String msg, Throwable tr) {        if (!debug)            return;        if (level <= Log.WARN) {            Log.w(createTag(), msg, tr);        }    }    public static void error(String msg) {        if (!debug)            return;        if (level <= Log.ERROR)            Log.e(createTag(), msg);    }    public static void error(String msg, Throwable tr) {        if (!debug)            return;        if (level <= Log.ERROR)            Log.e(createTag(), msg, tr);    }    //根据堆栈信息,创建Tag    private static String createTag() {        StackTraceElement[] sts = Thread.currentThread().getStackTrace();        if (sts == null) {            return null;        }        for (StackTraceElement st : sts) {            if (st.isNativeMethod()) {                continue;            }            if (st.getClassName().equals(Thread.class.getName())) {                continue;            }            if (st.getClassName().equals(Logger.class.getName())) {                continue;            }            return "Logger:(" + st.getFileName() + ":" + st.getLineNumber() + ")";        }        return "Logger:DefaultTag";    }}