Last active
August 29, 2015 13:59
-
-
Save AntonHolovin/10969919 to your computer and use it in GitHub Desktop.
Logger for android
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class LogTag { | |
private static String sClassName; | |
private static String sMethodName; | |
private static int sLineNumber; | |
private LogTag() { | |
} | |
public static boolean isDebug() { | |
return BuildConfig.DEBUG; | |
} | |
private static String createLog(String log) { | |
return String.format("[%s:%s] %s", sMethodName, sLineNumber, log); | |
} | |
private static void getMethodNames(StackTraceElement[] stackTraceElements) { | |
sClassName = stackTraceElements[1].getFileName(); | |
sMethodName = stackTraceElements[1].getMethodName(); | |
sLineNumber = stackTraceElements[1].getLineNumber(); | |
} | |
public static void e(String message) { | |
if (!isDebug()) { | |
return; | |
} | |
// Throwable instance must be created before any methods | |
getMethodNames(new Throwable().getStackTrace()); | |
Log.e(sClassName, createLog(message)); | |
} | |
public static void i(String message) { | |
if (!isDebug()) { | |
return; | |
} | |
getMethodNames(new Throwable().getStackTrace()); | |
Log.i(sClassName, createLog(message)); | |
} | |
public static void d(String message) { | |
if (!isDebug()) { | |
return; | |
} | |
getMethodNames(new Throwable().getStackTrace()); | |
Log.d(sClassName, createLog(message)); | |
} | |
public static void v(String message) { | |
if (!isDebug()) { | |
return; | |
} | |
getMethodNames(new Throwable().getStackTrace()); | |
Log.v(sClassName, createLog(message)); | |
} | |
public static void w(String message) { | |
if (!isDebug()) { | |
return; | |
} | |
getMethodNames(new Throwable().getStackTrace()); | |
Log.w(sClassName, createLog(message)); | |
} | |
public static void wtf(String message) { | |
if (!isDebug()) { | |
return; | |
} | |
getMethodNames(new Throwable().getStackTrace()); | |
Log.wtf(sClassName, createLog(message)); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment