您的位置:首页 > 其它

adb logcat调试中常用的命令介绍

2016-04-29 09:50 316 查看
Android日志系统提供了记录和查看系统调试信息的功能。日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过
logcat

令来查看和使用。

adb logcat 命令格式 : adb logcat [选项] [过滤项], 其中 选项 和 过滤项 在 中括号 [] 中, 说明这是可选的。

adb logcat 调试命令繁多,不易记忆,下面结合Android apk工程调试中常用的logcat命令进行介绍,以利于Android apk的开发与调试。

其中几个比较常用命令:

adb logcat -c --清除所有以前的日志
adb logcat -s tag_name --设置过滤选项,仅输出标签为tag_name的日志
adb logcat -v format --设置日志的输出格式。

adb logcat -v time --显示格式 "日期 时间 优先级 / 标签 (进程ID) : 进程名称 : 日志信息 "

adb logcat -v thread --显示格式
" 优先级 ( 进程ID : 线程ID) 标签 : 日志内容 "

adb logcat -v brief --默认的日志格式" 优先级 / 标签 (进程ID) : 日志信息 "

adb logcat -v process --显示格式 " 优先级 (进程ID) 日志信息 "

adb logcat -v tag --显示格式 " 优先级 / 标签 : 日志信息"

adb logcat -v raw --显示格式只输出日志信息, 不附加任何其他 信息, 如 优先级 标签等,

adb logcat -v long --显示格式 " [ 日期 时间 进程ID : 线程ID 优先级 / 标签] 日志信息 "

adb logcat -t n --设置日志输出的最大数目

adb logcat -t 5
--显示最近的5行日志

在进行Android apk 调试时,往往需要查看某些与apk相关的日志信息,因此需要进行过滤以获取简明有效的信息。接下来对logcat的过滤项进行详细说明。

过滤项格式

<tag>[:过滤项格式
: <tag>[:priority] , 标签:日志等级 默认的日志过滤项是 " *:I "

日志等级(priority)有:

V : Verbose (明细);
D
: Debug (调试);
I
: Info (信息);
W
: Warn (警告);
E
: Error (错误);
F
: Fatal (严重错误);
S
: Silent(Super all output) (最高的优先级, 可能不会记载东西);

接下来举例说明:

1、过滤指定等级日志

使用 adb logcat *:E 命令, 显示 Error 以上级别的日志。

2、过滤指定标签等级日志

使用 adb logcat WifiHW:D *:S 命令进行过滤;

-- 命令含义 : 输出10条日志, 日志是 标签为 WifiHW, 并且优先级 Debug(调试) 等级以上的级别的日志;

--注意 *:S : 如果没有 *S 就会输出错误;

3、可以同时设置多个过滤器

使用adb logcat WifiHW:D dalvikvm:I *:S 命令, 输出 WifiHW 标签 的 Debug 以上级别 和 dalvikvm
标签的 Info 以上级别的日志;

为了更为精确的获取调试的信息,还可以使用管道过滤日志

过滤固定字符串

过滤固定字符串 : 只要命令行出现的日志都可以过滤, 不管是不是标签;

-- 命令 : adb logcat | grep Wifi ;
命令说明:在日志中过滤出有字符串“Wifi”的日志进行显示。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: