项目的日志"/>
替换引入项目的日志
import java.io.IOException;/*** 全局替换//import android.util.Log;* Created by efan on 2017/4/13.*/public class XLog {/** 总开关 */public final static boolean SWITCH = true;/*** 启用默认tag(自定义tag实效)*/public final static boolean IS_ENABLE_DEF_TAG = true;private final static String DEFT_AG = "调试信息";private static int stepNumber = 0;private static int MaxLength = 1024 * 3;private final static boolean V = SWITCH && true;private final static boolean D = SWITCH && true;private final static boolean I = SWITCH && true;private final static boolean W = SWITCH && true;private final static boolean E = SWITCH && true;public static void v(String tag, String msg) {if (V) {if (msg.length() > MaxLength) {for (int i = 0; i < msg.length() / MaxLength; i++) {if (msg.length() > MaxLength) {android.util.Log.v(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, getScope() + " " + msg.substring(0, MaxLength));msg = msg.substring(MaxLength);}}}android.util.Log.v(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, getScope() + " " + msg);}}public static void d(String tag, String msg) {if (D) {android.util.Log.d(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, getScope() + " " + msg);}}public static void d(String tag, String msg, Object... args) {if (D) {android.util.Log.d(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, String.format(msg, args));}}public static void i(String tag, String msg) {if (I) {android.util.Log.i(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, getScope() + " " + msg);}}public static void w(String tag, String msg) {if (W) {android.util.Log.w(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, getScope() + " " + msg);}}public static void e(String tag, String msg) {if (E) {android.util.Log.e(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, getScope() + " " + msg);}}public static void v(String msg) {if (V) {android.util.Log.v(DEFT_AG + ":", getScope() + " " + msg);}}public static void d(String msg) {if (D) {android.util.Log.d(DEFT_AG + ":", getScope() + " " + msg);}}public static void i(String msg) {if (I) {android.util.Log.i(DEFT_AG + ":", getScope() + " " + msg);}}public static void w(String msg) {if (W) {android.util.Log.w(DEFT_AG + ":", getScope() + " " + msg);}}public static void e(String msg) {if (E) {android.util.Log.e(DEFT_AG + ":", getScope() + " " + msg);}}/*** 打印异常详细信息,推荐使用** @param e e*/public static void e(Exception e) {if (E) {android.util.Log.e(DEFT_AG + ":", getScope() + " " + "", e);}}/*** 打印异常详细信息,推荐使用** @param e e*/public static void e(Throwable e) {if (E) {android.util.Log.e(DEFT_AG + ":", getScope() + " " + "", e);}}/*** 打印异常详细信息,推荐使用** @param e e*/public static void printExceptionInfo(Exception e) {if (E) {android.util.Log.e(DEFT_AG + ":", getScope() + " " + "", e);}}private static final int DEFAULT_STACK_TRACE_LINE_COUNT = 4;private static String getScope() {StackTraceElement trace = Thread.currentThread().getStackTrace()[4];return "(" + trace.getFileName() + ":" + trace.getLineNumber() + ")" + "#" + trace.getMethodName() + " ";// Thread.currentThread().getStackTrace()[4].toString().substring(23).replaceFirst("\\.", "#");// StackTraceElement trace = Thread.currentThread().getStackTrace()[DEFAULT_STACK_TRACE_LINE_COUNT];// android.util.Log.i(DEFT_AG, trace.getClassName());// String stackTraceMsgArr = trace.toString();// return stackTraceMsgArr.substring(stackTraceMsgArr.indexOf("(")) + "#" + trace.getMethodName();}/*** 调用处子类方法所在位置** @param msg smg*/public static void getChildLog(String msg) {if (V) {StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[4];String stackTraceMsgArr = stackTraceElement.toString();android.util.Log.i(DEFT_AG, stackTraceMsgArr.substring(stackTraceMsgArr.indexOf("(")) + "#" + stackTraceElement.getMethodName() + " msg:" + msg);}}/** 打印步骤 */public static void showStepLogInfo() {if (V) {android.util.Log.v("步骤" + ":", getScope() + " " + "" + stepNumber++);}}public static String getStackTraceString(Exception e) {return android.util.Log.getStackTraceString(e);}public static void e(String tag, String s, Exception ex) {if (E) {android.util.Log.e(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, getScope() + " " + s, ex);}}public static void e(String tag, String msg, Throwable e, Object... args) {if (E) {android.util.Log.e(IS_ENABLE_DEF_TAG ? DEFT_AG : tag, String.format(msg, args), e);}}}
更多推荐
替换引入项目的日志
发布评论