Android adb logcat使用技巧「建议收藏」

2022-07-11 09:20:58 浏览数 (1)

大家好,又见面了,我是全栈君。

前言

新买的笔记本E431装了最新版的Eclipse,搞定了Android开发环境,可是logcat里查看东西居然仅仅显示level,没有错误的具体信息。我本身也不是一个愿意折腾图形界面,更喜欢纯命令行的操作,因此今天在明昊师兄的建议下,果断放弃Eclipse的logcat,投奔adb shell下运行logcat。

adb logcat

Android日志系统提供了logcat命令能够让我们跟踪和查看系统日志缓存区。基本的语法例如以下:

代码语言:javascript复制
[adb] logcat [<option>]... [<filter-spec>]

能够直接在命令行通过例如以下命令查看日志输出:

代码语言:javascript复制
adb logcat

也能够通过adb shell登录到开发机后,直接运行例如以下命令:

代码语言:javascript复制
logcat

option选项

我一般使用-s运行tag标签,比如:

高级功能

在rom porting或者其它debug的场合。须要结合过滤功能才干从logcat中获取真正须要的信息。接下来介绍logcat两种过滤实现方法。

过滤

adb logcat提供了附加功能,基于日志优先级来过滤日志。使用语法例如以下:

代码语言:javascript复制
adb logcat *:#

当中。#为下列选项之中的一个:

  • V 具体,表示全部可能的日志,默认级别
  • D 调试,表示全部合理的调试日志
  • I 信息,表示正常使用时的日志
  • W 警告,表示可能有问题,可是还没错误发生
  • E 错误,表示有问题。而且导致错误

全部优先级都自己主动包括比它高的优先级。比如logcat *:I。包括了信息、警告、错误等信息。

因此。当应用崩溃时。更应该集合logcat *:E来查看导致错误的原因,必须费力去查看不着边际的调试日志。

grep

对于adb logcat输出的日志内容,我们还能够结合grep实现进一步的过滤操作。

比如,我须要搜索错误报告中包括“wangzhengyi”关键词的日志,能够採用例如以下命令:

代码语言:javascript复制
adb logcat *:E | grep -i 'wangzhengyi'

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/115242.html原文链接:https://javaforall.cn

0 人点赞