android studio logcat用法(深入了解Android Studio中Logcat的用法)

jk 50次浏览

最佳答案深入了解Android Studio中Logcat的用法 Logcat是Android设备在开发调试中所产生的日志信息,是帮助开发者定位问题的一种重要工具。Android Studio作为目前最流行的Android开...

深入了解Android Studio中Logcat的用法

Logcat是Android设备在开发调试中所产生的日志信息,是帮助开发者定位问题的一种重要工具。Android Studio作为目前最流行的Android开发工具,自然有着完善的Logcat支持。本文将详细介绍如何在Android Studio中使用Logcat。

如何打开Logcat

首先,需要打开Android Studio的Logcat面板。做法是点击Android Studio底部的Terminal面板,输入以下命令:

adb logcat

输入后,Logcat面板即可出现。Logcat面板主要放置在Android Studio底部,并且默认是将现有的所有的Debug、Warning信息等输出出来。Logcat面板上方提供了多项过滤选项,可以选择只看某一部分的信息。

Logcat各组件介绍

Logcat面板对上面有五个组件,左依次是Log level、Tag、Pid、Application package、message。下面对每个组件进行简单介绍。

Log level

Log level是指日志级别,主要有Verbose、Debug、Info、Warning、Error和Assert等六种级别。这些日志级别按照日志输出信息的严重程度逐级递增,从Verbose到Assert。打印Log可以分为六个级别:

Log.v(tag, msg);    // verbose
Log.d(tag, msg);    // debug
Log.i(tag, msg);    // info
Log.w(tag, msg);    // warn
Log.e(tag, msg);    // error
Log.wtf(tag, msg);  // assert

在使用时,开发者可以根据需要自由选择使用的日志级别。不过值得提醒的是,Verbose是最不重要的日志级别,生产过程中现场代码需要删除Verbose打印,而info、Error等级别需要保留方便检测错误。如果希望同时查看多个级别的Log信息,在Log level下拉菜单中选择需要的级别即可。

Tag

Tag是日志信息标记,开发者可以自己在代码中打印Log信息时设置Tag来方便定位信息输出。比较常见的情况是,在Sign Up和Sign In验证信息校验不通过的时候,有如下示例:

Log.i(\"Validation\", \"password checking failed\");
Log.i(\"Validation\", \"email checking failed\");

如上代码所示,我们在信息输出时使用的tag都是Validation,之所以使用tag,是为了方便定位输出信息的位置。在Logcat面板中,开发者可以根据Tag的名称过滤出不同标记下的Log信息。

Pid

Pid则是产生当前Log的进程ID。

Application package

Application package则是应用程序的包名,对于多个应用同时运行的情况,可以根据包名过滤出多个不同应用程序产生的log信息。

Message

Message是Log日志输出的信息,该信息可以显示Log时的详细信息,包括时间、Log类别、Tag标识、输出内容等。同样可以通过搜索关键字,从信息中搜索相关内容。

Logcat的使用技巧

以下是一些在开发调试中使用Logcat的奇技淫巧。

过滤Log信息

Logcat面板提供了四种过滤方式:

  • 按Tag过滤:在Logcat面板Tag字段填写需要过滤的Tag,仅显示符合该条件的Log信息。
  • 按级别过滤:在Logcat面板Log level下拉菜单选择需要显示的Log等级,仅显示符合级别的Log信息。
  • 搜索过滤:在Logcat面板搜索框中输入需要搜索的内容即可过滤出符合条件的Log信息。
  • 组合过滤:可以根据需要选择组合三种过滤方式。

定制颜色主题

默认情况下,Logcat面板中每一级别的Log信息用不同颜色标记,但是这样不满足所有人的需求,比如颜色鲜艳的背景下,default级别的颜色并不是很清晰可辨。应用程序开发的人员可以在Android Studio偏好设置中进行定制化。

自定义打印代码模板

Android Studio默认情况下,在打印Debug等级别的Log时,常常是将Log tag和message的字符串连接并以字符串形式输出,如下所示:

Log.d(TAG, \"onCreate: savedInstanceState = [\" + savedInstanceState + \"]\");

这种做法是不利于代码阅读和错误分辨的,为了解决这个问题,可以打开代码模板文件,对输出代码进行自定义,实现将tag和message分离开来输出,并且以格式清晰易懂的方式展示。

总结

通过本文的介绍,相信大家已经了解了Android Studio中Logcat的使用方法,包括打开Logcat面板、各组件的介绍和使用技巧等。合理运用Logcat工具可以帮助开发者快速定位问题,优化程序。