利其器

工欲善其事,必先利其器
Anroid 開發(fā)的最大的利器就是Android Studio了。
工具雖好,但也要稱手才行。

調試Debug
在我還沒有使用Android studio之前,我主要的Debug查看時,主要是通過TAG過濾,也同時過本應用的其他LOG也被過濾了。同時我又懶做其他過濾,經(jīng)常使得我在調試時需要不斷的切換出來看其他的Log信息。
這個時候,使用TAG的粒度就小了些,看到不其應用的其他信息。如果不使用TAG,其他應用,系統(tǒng)的log就像蒼蠅一樣飛來了。
為了更全局的觀看應用的調式過程,我覺得需要粒度控制要精細一下。
這樣的好處就是我知道應用發(fā)生了什么
一個設備的調試信息像水一樣流動。
有時候,就是因為一點點,那是好一點點,那就會好很多,你比別人多一點點,也就是比別人好。一點點的多了。什么事情都會慢慢變好了
重要的是思想,方式方法可以是多樣的。但主要的要旨就是:
在開發(fā)中盡量顯示需要的信息,不顯示不需要的信息。
過濾

Paste_Image.png

Log Tag
Log Message
Log Package Name
Log PID
Log Level
(關于Regex(正則表達式)請自行查看使用
5個過濾維度:
標簽,內容,包名,進程ID,重要級

過濾參數(shù)就是日志的匹配規(guī)則(可使用正則表達式)

區(qū)分自己的應用和別人的應用 包名,和進程ID
包名是應用的唯一確認的標識不僅在開發(fā)中,而且在生產(chǎn)環(huán)境中也是一樣的。

所以在開發(fā)中如何選中只是本應用的信息的優(yōu)先維度是:包名
Package Name
在過濾參數(shù)內寫入指定的包名,那么在Log監(jiān)視臺里打印出來的就是與本包名相關的Log了。
世界一下子就清靜了
這個做完之后,粒度的粗細就細分到了自己的

我不建議使用PID.因為這個值會隨著運行環(huán)境的不同有不同的值 不可控的值不具唯一性。

使用Log Level
選擇Log Level 里是有5種重要級。它們是父子層級的關系。
Error>Warn>Info>debug>Verbose

還有一個Assert(用于自動化測試斷言的)

在打印的Log,這樣的一層層的將Log的范圍縮小,這個世界可能就更加安靜了
一個方式是:你可以制5個過濾,分別對應的這個5個重要級,在需要的時候選中你需要的級別顯示
一個方式是:我們通過Log的顏色值去做區(qū)分的。

使用TAG
標簽,這個時候就具體到業(yè)務模塊了。我的經(jīng)驗是,在不同的打印的就是當前類名稱做為一個TAG標稱
一通發(fā),這里我能較快過的通過這個Tag來確認這個LOG是在哪一個類打印出來的。可以很方使定位
這是它的目的,
當然你有一些朋友會想使用統(tǒng)一TAG(整個應用都是同一個 例如:APP的名字)
也有一種折中的方式:使用模塊的名稱做為TAG(倒如:登錄),這些具體要看你們的分式和代碼的解耦的情況。
只要達成只顯示需要的信息,不顯示不需要的信息的要旨就可以了。

使用 Log Message
這部分選用的是消息的內容,作用為消息內容部分,這個部分如過結合正則表達式,應該也有一定的過人之處
另外如果還不能完全滿足的。

最后
PS:在log 監(jiān)視窗里還有可以通查找折方式去定位你想要的信息

還有一些更好的
選擇Level時,可以看到有一個下拉選項。點擊選項,彈出下拉框,選擇你需要的Level.控制臺就會過濾你想要的Level

還有,可以看到這里有一參數(shù)輸入框,輸入?yún)?shù),會自動的替換了過濾維 度里的參數(shù)值,但是具體的優(yōu)先過沾濾哪一個就不是很清楚了。
如你輸入PID值 9911 那它會過濾出這PID相關 LOG,
如父輸入一TAG,那它會過濾出這個TAG相關的Log

Paste_Image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容