adb logcat調試中常用的命令介紹


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”的日志進行顯示。


使用logcat命令將日志信息輸出至文本文檔中:

  adb logcat -v time > filename.log

  adb logcat -s tag > filename.log

  adb logcat *:E > filename.log

  adb logcat | grep "info" > filename.log

注意:filename.log的存儲路徑。




 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM