android.util.Log类

android.util.Log常用的方法有以下5个:Log.v()Log.d()Log.i()Log.w() 以及 Log.e() 。根据首字母对应VERBOSE,DEBUG,INFO, WARN,ERROR。

  • Log.v 的输出颜色为黑色的,任何消息都会输出,这里的v代表verbose啰嗦的意思。

  • Log.d的输出颜色为蓝色的,仅输出debug调试的意思,但他会输出上层的信息,过滤起来可以通过DDMS的Logcat标签来选择。

  • Log.i的输出颜色为绿色,一般提示性的消息information,它不会输出Log.vLog.d的信息,但会显示iwe的信息。

  • Log.w的输出颜色为橙色,可以看作为warning警告,一般需要我们注意优化Android代码,同时选择它后还会输出Log.e的信息。

  • Log.e的输出颜色为红色,可以想到error错误,这里仅显示红色的错误信息,这些错误就需要我们认真的分析,查看栈的信息了。

1,常规用法

1
2
3
4
5
Log.v(TAG,"一条啰嗦日志");
Log.d(TAG,"一条调试日志");
Log.i(TAG,"一条提示日志");
Log.w(TAG,"一条警告日志");
Log.e(TAG,"一条错误日志");

其中TAG为字符串。用于标记。同一个应用TAG基本可以成一样。并且,应用打包发布时,最好把全部Log注释掉,否则将产生不必要的资源消耗(虽然很小)。

2,分装Log

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public class L {
private static String TAG = "WZM";
// 开关
private static boolean debug = true;

private L() {
}

public static void setTAG(String TAG) {
L.TAG = TAG;
}

public static void setDebug(boolean debug) {
L.debug = debug;
}

public static void v(String msg) {
if (debug)
Log.v(TAG, msg);
}

public static void d(String msg) {
if (debug)
Log.d(TAG, msg);
}

public static void i(String msg) {
if (debug)
Log.i(TAG, msg);
}

public static void w(String msg) {
if (debug)
Log.w(TAG, msg);
}

public static void e(String msg) {
if (debug)
Log.e(TAG, msg);
}

}

使用时:

1
2
3
4
5
L.v("一条啰嗦日志");
L.d("一条调试日志");
L.i("一条提示日志");
L.w("一条警告日志");
L.e("一条错误日志");

并且,可在Application中设置开关(是否输出日志)或TAG(默认WZM

1
2
3
4
5
6
7
8
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
L.setTAG("TAG");
L.setDebug(false);
}
}

打包发布时,debug设为false即可。


无关配图

其他

还有对Toast的简单封装:Android 封装Toast