Android开发的log管理

my git : https://github.com/hejiawang

在日常写代码的过程中,为了测试程序,总会在LogCat里面打印出一些log,Java里面有System.out.println(),Android开发也可以用system,但是不推荐,我们会用Android的Log类打印出我们想要的信息,那么问题来了,在程序开发完,这个Log类删还是不删呢??删了吧,下次调试的时候怎么办?在写上?不删吧,还是会有问题,比如说坏人安装上程序,在eclipse的LogCat里看一些信息,总会不安全。所以,我么可以创建一个类,通过这个类,控制log的打印,代码如下:

package com.wang.mobilesafe.utils;

import android.util.Log;

/**
 * log工具类
 * 
 * @author wang
 *
 */
public class LoggerUtil {

	private static final int VERBOSE = 5;
	private static final int DEBUG = 4;
	private static final int INFO = 3;
	private static final int WARN = 2;
	private static final int ERROR = 1;

	/**
	 * 通过改变这个数,控制LogCat打印的内容
	 * 内部测试阶段,所有信息都能打印到LogCat,LOG_LEVEL = 6 
	 * 测试版,预览版,LOG_LEVEL = 3
	 * 稳定版,LOG_LEVEL = 2 
	 */
	public static int LOG_LEVEL = 6;

	public static void v(String tag, String msg) {

		if (LOG_LEVEL > VERBOSE) {
			Log.v(tag, msg);
		}
	}

	public static void d(String tag, String msg) {

		if (LOG_LEVEL > DEBUG) {
			Log.d(tag, msg);
		}
	}

	public static void i(String tag, String msg) {

		if (LOG_LEVEL > INFO) {
			Log.i(tag, msg);
		}
	}

	public static void w(String tag, String msg) {

		if (LOG_LEVEL > WARN) {
			Log.w(tag, msg);
		}
	}

	public static void e(String tag, String msg) {

		if (LOG_LEVEL > ERROR) {
			Log.e(tag, msg);
		}
	}
}

 这样,在程序的代码里我们可以用自己创建的这个类打印log,通过改变LOG_LEVEL的值,来决定是否打印相应级别的log

相关推荐