前言
最近,Android Studio 自動更新了自帶的 Logcat 工具,整體外觀和使用方法變得和之前完全不同了。一開始我以為是自己按到什么不該按的按鈕,把 Logcat 弄壞了,后來才知道是版本更新導致的。新版本的 Logcat 用命令來過濾信息,且不同的日志級別帶有不同的顏色顯示,比老版本的更好用了。本博客將簡單介紹新版本 Logcat 的用法
1. 過濾包名
新版本 Logcat 使用 package:
來過濾不同包中的日志,其中 mine
表示當前包
2. 按日志級別進行過濾
按日志級別進行過濾是 Logcat 中最常用的功能,新版本的 Logcat 使用 level:
來過濾日志級別。根據日志的不同級別有以下選項:
- level:VERBOSE:顯示所有日志
- level:DEBUG:顯示調試日志
- level:INFO:顯示一般信息
- level:ERROR:顯示錯誤日志
- level:ASSERT:顯示斷言信息
可以看到,不同過濾命令間只需要用空格隔開就好。
3. 保留指定時間的日志
新版 Logcat 還提供過濾指定時間日志的功能,如
age:10s
上述命令表示從 10s 以前的日志開始輸出,這里 s 表示的是秒,很容易可以聯想到 m 表示分 (minute),h 表示小時 (hour)。
4. 過濾信息的常用命令
message:
用于過濾信息
tag:
用于過濾標簽
line
:以行信息過濾日志,是 tag:
和 message
的并集
5. 一些特殊的操作
看到這里,你可能會說,唉你這個只能進行簡單的過濾啊。假設我想過濾不包含 CXK
的日志怎么辦?想用正則表達式怎么辦?這些新版的 Logcat 全部考慮到了!
我們簡單在 Logcat 的輸入框中輸入 message
會彈出以下提示
我們看到彈出的提示有 message:
、message~
、-message
和 -message~
。可以看到 message
前后多了一些符號,現在我來解釋一下這些符號的作用:
-
:對當前標簽的過濾結果取反~
:對當前標簽的過濾使用后續正則表達式
聰明如你,一定能想到 -xxx~
就是對 xxx
標簽采用正則表達式的結果取反~~