android 日志输出封装,android打印日志封装

该博客给出了Android日志输出封装的代码。定义了LogUtils类,包含获取类名、方法名和行数的方法,以及判断是否可调试的方法。还封装了不同级别的日志输出方法,如e、i、d等,在可调试状态下输出日志。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public class LogUtils {

static String className;//类名

static String methodName;//方法名

static int lineNumber;//行数

private LogUtils(){

/* 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));

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值