您的位置:首页 > 移动开发 > Android开发

Android开发中LogCat的使用

2014-09-13 11:08 309 查看
在log窗口中,每条信息都包含五个部分,Time,标题空白,pid,tag和Message。

1、Time
表示执行的时间,这个信息对于学习生命周期,分析程序运行的先后顺序特别有用。

2、标题空白的列
表示的是信息的种类,分为V,D,I,W,E五种。

V:verbose,显示全部信息
D:Debug,显示调试信息
I:Info,显示一般信息
W:Warming,显示警告信息
E:Error,显示错误信息

可以通过点击LogCat上面的用圆圈括起来的V,D,I,W,E来改变显示的范围。比如选择了W,那就只有警告信息和错误信息可以显示出来了。

3、pid
表示程序运行时的进程号

4、tag
标签,通常表示系统中的一些进程名

5、Message
表示进程运行时的一些具体信息

6、Filter的使用
可以在Filter中输入筛选信息,使LogCat中只现实我们需要分析的信息。比如我们只想看和HelloWorld相关的信息,就可以在Filter中输入HelloWorld,这样只有Message中包含HelloWorld的内容才会显示出来。

7、LogCat中信息不能显示
上面说了这么多关于logCat的使用,可能LogCat中根本就什么信息都没有显示!没关系,只要在Eclipse中选择window->show view->other->android->devices就可以了。

8、在LogCat中输出程序的运行信息
a、在程序中导入相应的包
import android.util.Log;

b、在需要输出信息的函数中增加相关的调试代码
Log.i("debug","oncreate");

方法i是Log类的静态方法,可以直接使用,我们看着各类的定义可以看到,它提供了多种输出方法,分别对应我们上面提到的V,D,I,W,E。用哪个方法就决定了输出的类型,这里用i,表示输出的是information。

这个方法中的第一个参数就是要显示在Tag那一栏的内容,把这条语句加到OnCreate方法中,执行时LogCat中就会显示如下的信息。

9、创建新的Filter
有时候只想看我们程序中用Log类的相关方法输出的各种信息,这时就可以考虑新建一个过滤器。点击LogCat的右上角的“+”号,可以创建一个新的过滤器。比如我们在by Log Tag的选项中填入上面程序输出的"hi world"这个tag。这样再运行时在我们新创建的Filter中就只显示hi world这个tag标记出来的信息了。

Example:

public class MainActivity extends Activity {

int cnt = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button btn = (Button) this.findViewById(R.id.btn01);
btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
StringBuilder sb = new StringBuilder("Print : ");
sb.append(cnt++);
Log.d("debug", sb.toString());
}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android开发 LogCat