Android对打印Log的封装
2017-01-11 10:27
357 查看
package net.awservice.aoyinyunlian.util; import android.util.Log; import net.awservice.aoyinyunlian.BuildConfig; public class UtilLog { static String className;//类名 static String methodName;//方法名 static int lineNumber;//行数 private UtilLog() { /* Protect from instantiations */ } public static boolean isDebuggable() { return BuildConfig.DEBUG; } private static String createLog(String log) { StringBuffer buffer = new StringBuffer(); buffer.append(methodName); buffer.append("(").append(className).append(":").append(lineNumber).append(")"); buffer.append(log); return buffer.toString(); } private static void getMethodNames(StackTraceElement[] sElements) { className = sElements[1].getFileName(); methodName = sElements[1].getMethodName(); lineNumber = sElements[1].getLineNumber(); } public static void e(String message) { if (!isDebuggable()) return; // Throwable instance must be created before any methods getMethodNames(new Throwable().getStackTrace()); Log.e(className, createLog(message)); } public static void i(String message) { if (!isDebuggable()) return; getMethodNames(new Throwable().getStackTrace()); Log.i(className, createLog(message)); } public static void d(String message) { if (!isDebuggable()) return; getMethodNames(new Throwable().getStackTrace()); Log.d(className, createLog(message)); } public static void v(String message) { if (!isDebuggable()) return; getMethodNames(new Throwable().getStackTrace()); Log.v(className, createLog(message)); } public static void w(String message) { if (!isDebuggable()) return; getMethodNames(new Throwable().getStackTrace()); Log.w(className, createLog(message)); } public static void wtf(String message) { if (!isDebuggable()) return; getMethodNames(new Throwable().getStackTrace()); Log.wtf(className, createLog(message)); } }
相关文章推荐
- onInterceptTouchEvent和onTouchEvent调用关系详解
- Android---工具类Utils(你想不到的完美)
- AndroidMainfest.xml详解——<data>
- Android Studio 换系统如何继续使用(windows系统)
- 使用android ndk编译boost动态库
- Android开发——View的位置参数详解
- android_64_drawBitmap_canvas_matrix
- Android Studio 导入新项目出现 Gradle's dependency cache may be corrupt
- android项目中常用技术-自我总结(一)
- android DrawerLayout侧边栏实现
- android studio恢复误删文件
- android-学校地址
- Android Studio Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
- AndroidMainfest.xml详解——<compatible-screens>
- Android版本,名称和API level对应关系,已经最新的android各版本的市场份额
- android 开发常用工具
- tools:text和android:text
- java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException
- Android代码备忘录(二)
- 一个android的dialog框架