从Android Studio Dophin开始,Android Studio中的默认展示了新版的logcat。新版的logcat色彩上是更加的好看了,不同的tag会有不同的颜色,不同level等级的log默认也有不同的颜色。log过滤修改的更简洁了,当然使用起来也更加复杂了。原先的log视图只需要勾选就可以选择不同level的log了,只需要选择只展示当前应用的log就可以过滤掉其他应用的log了,但是新版只提供了一个输入框去过滤。在经过几个月的适应和对于官方文档的学习后,终于熟练使用,这里简单分享一下,让更多人更快入门。
定义自己专属的log view
log view 默认提供了两种视图,Standard View 和Compat View。Stand View会展示每一条log的日期,时间,进程线程id,tag,包名,log level以及message。Compat View只展示时间,log level和详细的message。可以通过log view左边的 Configure Logcat Formatting Options 按钮来修改,同时这个按钮中还有一个 Modify Views 选项可以来修改standard和 Compat视图的具体展示内容,可以定制自己的logview样式,如下图所示。
个性化的logcat 视图不仅仅是可以自定义展示的内容,还可以修改log和filter的配色方案。前往 Settings(Windows)/Preferences(Mac) ->Editor -> Color Scheme ,选择 Android Logcat 即可修改log 的颜色,选择 Logcat Filter 即可修改filter的颜色。
以上修改的是logcat view的外表,我们还可以修改它的内核,一个是logcat循环滚动区的大小,以及新logcat window的默认filter,可以通过前往 Settings(Windows)/Preferences(Mac) -> Tools -> Logcat 设置。
一些操作技巧
在标准布局下,或者我们的log太长的时候,一屏通常展示不下,我们需要不停的向右滑动,滚动才能看到log的信息,我们可以用log view左侧的 Soft-Wrap 按钮来让log换行。
左侧的Clear Logcat按钮可以清空logcat。左侧的Pause按钮可以暂停logcat的输出,方便看错误日志,可以避免关心的日志被新的日志冲掉。
新版本中,可以通过点击logcat tab右侧的 New tab 按钮来同时创建多个logcat view窗口。这种方式创建的不能同时展示,而利用logcat view左侧的split Panels 按钮则可以创建多个窗口,并且同时展示。每一个窗口都可以设置自己要展示的连接设备,展示样式,以及过滤选项。这样就可以很方便的同时观察多种log。
通过键值对来过滤Log
新的过滤器,看起来简单,实际上更加复杂且强大了。通过
Ctrl
+
Space
按键可以查看系统建议的一些查询列表。这里介绍一下查询中会用到的键:
crash
匹配应用崩溃日志,
stacktrace
匹配任意类似java堆栈轨迹的日志,这两个对于看crash查问题是非常好用的。
这么多的键匹配,是可以逻辑组合的。我们可以使用
&
和
|
以及圆括号,系统会强制执行常规的运算符优先级。
level:ERROR | tag:foo & package:mine
会被强转为
level:ERROR | (tag:foo & package:mine )
。如果我们没有填写逻辑运算符,查询语言会将多个具有相同键的非否定过滤视为
OR
,其他过滤视为
AND
。
tag:fa tag:ba package:mine
计算逻辑是
(tag:fa | tag:ba) & package:mine
但
tag:fa -tag:ba package:mine
计算逻辑是
tag:fa & -tag:ba & package:mine
。这里的-用来表示否定,既tag不包含ba的情况。
新版的logcat view当然也是支持正则的,tag、message、package、process这几项是支持正则的。使用正则需要在键后面加一个
~
,例如:
tag~:My.*Report
。
除了正则这个选项之外,这几个键还有完全匹配和包含字符串即可的选项。不加修饰符号就是包含指定的字符串即可匹配。如果后面加
=
则要完全匹配才可以,例如
process=:system_server
和
process:system_ser
可以匹配到system_server的log,但是
process=:system_ser
则无法匹配到。
同时如上几个匹配选项都支持和前面说的否定符号连用如:
-process=:system_server
。
既然新版支持了这么复杂和强大过滤功能,如果每次都现想现写,那肯定是头皮发麻。as也为我们提供了收藏和历史记录功能。点击右侧的的星星按钮即可收藏当前的过滤条件,点击左侧的漏斗即可查看历史和收藏,并且可以删除不想要的记录。
切换回旧版log view
最后的最后,如果你觉得新版本适应不了,还是想要切换回旧版本的log view,还想要保留新版的android studio,也还是可以通过修改设置进行切换的。
前往
Settings(Windows)/Preferences(Mac) -> Experimental
, 反选
Enable new logcat tool window
即可,如下图所示。
学习工具的目的,是为了让工具更好的为我们服务。希望大家都能够通过使用as提供的新功能来提高效率,从而有更多的时间去风花雪月。