在Android学习过程中,发现加Android自定的Log.i Log.d 时调试,但是我们的程序完成后,要发布时,想一次性把log的打印一次性关闭,那么就麻烦了!看过这篇文章可能会帮助你! 本人第一次写博客,写得不好请见谅

直接上代码

import android.util.Log;

public class LogUtils {
final static int DEBUG_VERBOSE = 6;
final static int DEBUG_DEBUG = 5;
final static int DEBUG_INFO = 4;
final static int DEBUG_WARN = 3;
final static int DEBUG_ERROR = 2;
final static int DEBUG_ASSERT = 1;

/**
* 只打印大于等于debugLevel的函数
* 跟Linux一样
* 数值越大等级越低
* 6 代表 verbose
* 5 代表 debug
* 4 代表 info
* 3 代表 warn
* 2 代表 error
* 1 代表 assert
* debugLevel >= 6 时表示 打印所有的消息
* debugLevel = 0 时表示不打印所有的消息
*/
static int debugLevel = 6;

private static final String TAG = "CustomLogUtils";

public static void v(String msg){
if (debugLevel >= DEBUG_VERBOSE){
Log.v(TAG, "vvvv" + msg);
}
}
public static void d(String msg){
if (debugLevel >= DEBUG_DEBUG){
Log.d(TAG, "dddd" + msg);
}
}

public static void i(String msg){
if (debugLevel >= DEBUG_INFO){
Log.i(TAG, "iiii" + msg);
}
}

public static void w(String msg){
if (debugLevel >= DEBUG_WARN){
Log.i(TAG, "wwww" + msg);
}
}

public static void e(String msg){
if (debugLevel >= DEBUG_ERROR){
Log.i(TAG, "eeee" + msg);
}
}

public static void a(String msg){
if (debugLevel >= DEBUG_ASSERT){
Log.i(TAG, "aaaa" + msg);
}
}



/**
* 只打印大于等于debugLevel的函数
* 跟Linux一样
* 数值越大等级越低
* 6 代表 verbose
* 5 代表 debug
* 4 代表 info
* 3 代表 warn
* 2 代表 error
* 1 代表 assert
* debugLevel >= 6 时表示 打印所有的消息
* debugLevel = 0 时表示不打印所有的消息
*/
public static int getDebugLevel() {
return debugLevel;
}

/**
* 只打印大于等于debugLevel的函数
* 跟Linux一样
* 数值越大等级越低
* 6 代表 verbose
* 5 代表 debug
* 4 代表 info
* 3 代表 warn
* 2 代表 error
* 1 代表 assert
* debugLevel >= 6 时表示 打印所有的消息
* debugLevel = 0 时表示不打印所有的消息
*/
public static void setDebugLevel(int debugLevel) {
LogUtils.debugLevel = debugLevel;
}



}


代码中有一个debugLevel 这个就是控制是否打印的开关了,当工程完成之后,只要改变debugLevel就可以了,一般改成3就可以了(只打印warn ,error,assert的信息),当然也可以改成0 不打印所有的信息,这个值因个人需要修改。

只打印大于等于debugLevel的函数
* 跟Linux一样
* 数值越大等级越低
* 6 代表 verbose
* 5 代表 debug
* 4 代表 info
* 3 代表 warn
* 2 代表 error
* 1 代表 assert
* debugLevel >= 6 时表示 打印所有的消息
* debugLevel = 0 时表示不打印所有的消息
*/

函数里面的“iiii”,"eeee","wwww"等可以根据自己的需求跟爱好来修改,源码demo在此,可以自行修改,希望对大家有作用

更多相关文章

  1. Android消息传递机制浅析
  2. android GSM incoming电话部分流程
  3. android小记之手动安装apk
  4. Android推送比较
  5. Android消息机制简述(Java层)
  6. 利用Xposed Hook打印Java函数调用堆栈信息的几种方法
  7. Android各版本API与NDK对照表,发布时间与市场占有率
  8. AIDL 消息通信
  9. 带你一步一步深入Handler源码,拿下面试官不在话下!

随机推荐

  1. android 3.0中加快启动模拟器
  2. 怎么让android定时关机
  3. Android(安卓)ListView内部组件事件响应
  4. 一定要注意 Android(安卓)内存泄漏问题
  5. Android是怎么启动的-[Android取经之路]
  6. android——shortcut
  7. android 内存消耗分析
  8. android 触摸事件、点击事件的区别
  9. android 笔记 --- 流量统计
  10. Android(安卓)FrameWork――Touch事件派