package com.test.util;
import com.test.BuildConfig;
/**
* Wrapper API for sending log output.
*/
public class AppLog {
protected static final String TAG = "AppLog";
private AppLog() {
}
/**
* Send a VERBOSE log message.
*
* @param msg
* The message you would like logged.
*/
public static void v(String msg) {
if (BuildConfig.DEBUG)
android.util.Log.v(TAG, buildMessage(msg));
}
/**
* Send a VERBOSE log message and log the exception.
*
* @param msg
* The message you would like logged.
* @param thr
* An exception to log
*/
public static void verbose(String msg, Throwable thr) {
if (BuildConfig.DEBUG)
android.util.Log.v(TAG, buildMessage(msg), thr);
}
/**
* Send a DEBUG log message.
*
* @param msg
*/
public static void debug(String msg) {
if (BuildConfig.DEBUG)
android.util.Log.d(TAG, buildMessage(msg));
}
/**
* Send a DEBUG log message and log the exception.
*
* @param msg
* The message you would like logged.
* @param thr
* An exception to log
*/
public static void debug(String msg, Throwable thr) {
if (BuildConfig.DEBUG)
android.util.Log.d(TAG, buildMessage(msg), thr);
}
/**
* Send an INFO log message.
*
* @param msg
* The message you would like logged.
*/
public static void info(String msg) {
if (BuildConfig.DEBUG)
android.util.Log.i(TAG, buildMessage(msg));
}
/**
* Send a INFO log message and log the exception.
*
* @param msg
* The message you would like logged.
* @param thr
* An exception to log
*/
public static void info(String msg, Throwable thr) {
if (BuildConfig.DEBUG)
android.util.Log.i(TAG, buildMessage(msg), thr);
}
/**
* Send an ERROR log message.
*
* @param msg
* The message you would like logged.
*/
public static void error(String msg) {
if (BuildConfig.DEBUG)
android.util.Log.e(TAG, buildMessage(msg));
}
/**
* Send a WARN log message
*
* @param msg
* The message you would like logged.
*/
public static void warn(String msg) {
if (BuildConfig.DEBUG)
android.util.Log.w(TAG, buildMessage(msg));
}
/**
* Send a WARN log message and log the exception.
*
* @param msg
* The message you would like logged.
* @param thr
* An exception to log
*/
public static void warn(String msg, Throwable thr) {
if (BuildConfig.DEBUG)
android.util.Log.w(TAG, buildMessage(msg), thr);
}
/**
* Send an empty WARN log message and log the exception.
*
* @param thr
* An exception to log
*/
public static void warn(Throwable thr) {
if (BuildConfig.DEBUG)
android.util.Log.w(TAG, buildMessage(""), thr);
}
/**
* Send an ERROR log message and log the exception.
*
* @param msg
* The message you would like logged.
* @param thr
* An exception to log
*/
public static void error(String msg, Throwable thr) {
if (BuildConfig.DEBUG)
android.util.Log.e(TAG, buildMessage(msg), thr);
}
/**
* Building Message
*
* @param msg
* The message you would like logged.
* @return Message String
*/
protected static String buildMessage(String msg) {
StackTraceElement caller = new Throwable().fillInStackTrace()
.getStackTrace()[2];
return caller.getClassName() + "." + caller.getMethodName() + "(): "
+ msg;
}
}
Android 日志打印功能及项目
最新推荐文章于 2022-02-12 15:10:09 发布