Android Logcat用法

來源:互聯網
上載者:User

        在我們進行Android程式開發的時候,列印日誌對我們偵錯工具定位問題是非常重要的。比如在我們的eclipse開發環境中,通過adroid 開發外掛程式內建的Logcat視窗可以很方便的查看輸出日誌。

    這個比較簡單,不是本文講解的重點。

   不依賴eclipse環境,其實我們可以通過命令adb logcat來抓取日誌.前提是你安裝了adb工具包,android sdk中內建這個工具包adb.exe。

   在這裡假設你安裝了工具包並且設定了環境變數(在Path中加入adb.exe對應的目錄)。

   讓我們看看adb logcat的協助資訊 敲入adb logcat --help。

   

   

   adb logcat -s 這個主要是用來過濾日誌用的.<tag>[:priority]

   比如

   android logcat -s WORKFLOW 顯示所有TAG為WORKFLOW的日誌,記錄層級包括V,D,I,W,E,F。

 

  android logcat -s WORKFLOW:I 顯示所有TAG為WORKFLOW 記錄層級為I以上的的日誌。

 

  android logcat -s *:W 顯示所有記錄層級為W以上的日誌。

 

  如果我們想把日誌輸出到檔案而不是控制台,很簡單。

  android logcat > logs.txt   “>" 表示輸出重新導向,直接寫到檔案即可。

  注意按照協助資訊中的方法 android logcat -f logs.txt 總是會報錯,檔案唯讀 不能寫入.

  

  adb logcat -v 控制日誌輸出的格式化問題 

  可取值範圍 brief process tag thread raw time long,在不指定-v參數的情況下 預設是brief。

  

  你可以試試adb logcat -v time ,adb logcat -v tag輸出日誌的區別,就知道他們的具體含義了。

  

  adb logcat -b 設定不同的日誌緩衝區的 

  可取值範圍 main radio events 在不指定-b的情況下,預設是main。

  大家可以嘗試一下 adb logcat -b radio 以及 adb logcat -b events兩個命令,看看輸出的日誌有和區別

 

 

  最後: 在實際使用過程中發現Logcat輸出的最長文本是有長度限制的,當超過一定長度時會被截取,只顯示了一部分的內容,經過調查發現,android的Logcat源碼對Logcat對應的文本緩衝區為1024位元組,如果你的輸入內容過長,請先截斷一下,將輸出語句切割成幾條輸出語句,保證每條輸出語句的長度不超過1024位元組。

 

   

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.