不建议用System.out.println(), 因为使用syso导致日志打印不可控制、打印时间无法确定、不能添加过滤器、日志没有级别区分等为题。
Android中的日志工具类是Log(android.util.Log),这个类中提供了如下几个方法来供我们打印日志:
1. Log.v()
这个方法用于打印那些最为琐碎的,意义最小的日志信息。对应级别verbose,是Android日志里面级别最低的一种。
2. Log.d()
这个方法用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。对应级别debug,比verbose高一级。
3. Log.i()
这个方法用于打印一些比较重要的数据,这些数据应该是你非常想看到的,可以帮你分析用户行为的那种。对应级别info,比debug高一级。
4. Log.w()
这个方法用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复一下这些出现警告的地方。对应级别warn,比info高一级。
5. Log.e()
这个方法用于打印程序中的错误信息,比如程序进入到了catch语句当中。当有错误信息打印出来的时候,一般都代表你的程序出现严重问题了,必须尽快修复。对应级别error,比warn高一级。
日志级别:verbose --> debug --> info --> warnning --> error,在logcat控制台过滤时,只有log级别等于设置级别或者在设置级别之上时才会显示出来。
具体使用:log.v(tag, msg) tag用于过滤信息,而msg用于打印真正的信息。
1、eg:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.hello_world_layout);
//打印日志
Log.d("HelloWorldActivity", "onCreate execute");
}
不仅可以看到tag和msg内容,就连程序的包名、打印的时间以及应用程序的进程号都可以看到。
可以看到