作为一个代码萌新,最让自己受到鼓舞的事情就是程序顺利的运行,最头疼的事情就是各种报错,顺着编译器的报错,即使一个错误,也要查资料,查代码,折腾半天,而且往往最后发现是自己疏忽的小细节,导致的错误。
查错的过程中,发现log工具非常好用,但是一个需要自己养成这个习惯,另一个就是测试完成后,需要把log语句删除,因为打印功能影响性能(应该吧),强迫症如我,也觉得需要有个妥善的办法,关闭或者处理log工具。
于是用郭霖大侠的办法,自己定制一个自己的l日志工具,督促自己养成多调用日志的习惯,这样以后查错,可以顺藤摸瓜,解决bug指日可待。。。。
新建工具类LogUtil.class
public class LogUtil {
public static final int VERBOSE=1;
public static final int DEBUG=2;
public static final int INFO=3;
public static final int WARN=4;
public static final int ERROR=5;
public static final int NOTING=6;
public static int level=VERBOSE;
public static void v(String tag,String msg){
if (level<=VERBOSE){
Log.v(tag,msg);
}
}
public static void d(String tag,String msg){
if (level<=DEBUG){
Log.d(tag, msg);
}
}
public static void i(String tag,String msg){
if (level<=INFO){
Log.i(tag,msg);
}
}
public static void w(String tag,String msg){
if (level<=WARN){
Log.w(tag,msg);
}
}
public static void e(String tag,String msg){
if (level<=ERROR){
Log.e(tag, msg);
}
}
}
使用时,直接调用
LogUtil.i("onCreate:",String);
这样,会生成info级别的日志,方便查看
默认level级别为verbose,所有级别的日志都会生成。
指定级别,可以屏蔽低级别的日志(貌似没必要,个人一般测试的时候用,AS自己能筛选日志级别)
当测试完成时,指定level=noting,就可以屏蔽所有日志,加快运行速度。
个人使用习惯
首先在类中logt+tab键,回快捷生成一个TAG字符串,值就是当前类名;
然后logd或者其他级别快速生成一条log语句。默认的语句构造是【TAG,“(当前方法名)”】
TAG我们已经有了,只需要在msg的方法名后面增加自己需要的日志信息就完成了。
最后再把Log改成LogUtil,这样就能手动关闭所有的日志语句了