【Android筆記 一】Log的介紹及使用方法

  今天開始看了sundy的教程,關於Log的介紹,自己做了一些筆記,也根據官網的SDK自己總結了一些東西,其實相當於做了簡單的翻譯。言歸正傳~

/*********************************************************************************************************************************************************************************/

首先sundy講了一個非常棒的測試工具,包括UC在內的知名軟件都經不住考驗阿

通過終端進入 adb shell (我的是linux系統,windows的朋友進入dos就好了)

一般的安裝程序都存在於/data/data中,進入目錄後

執行monkey -p 程序包名 -v 測試次數

例子 mokey -p uni.demo -v 2000

然後就可以看見瘋狂的測試了,感覺就是相當於各種亂敲


/*********************************************************************************************************************************************************************************/

兩個重要狀態的介紹


ANR表示無響應
產生條件: 1 界面操作(按鈕的點擊)等待響應時間超過5秒
         2 HandleMessage回調函數中超過10秒  //解決技巧:將長時的處理放在單獨的線程中,或者放在主程序中

FC表示強制關閉
/*********************************************************************************************************************************************************************************/
五種類型LOG  從上到下重要程度增加
V 不是很重要的信息
D debug信息
I info 表示正常打印的信息
W warn 警告
E error錯誤 異常
/*********************************************************************************************************************************************************************************/
log文件的位置  /data/log

Log文件的組成

1系統的基本信息 內存,CPU,進程隊列,虛擬內存,垃圾回收等信息
格式----MEMORY------
2事件信息
格式:LOGCAT格式
3虛擬機信息

格式:Dalvik


/*********************************************************************************************************************************************************************************/
查看技巧:
查詢ANR關鍵詞 無響應事件
查詢Fatal關鍵詞  異常退出事件
/*********************************************************************************************************************************************************************************/
SDK中的Log類

官方描述“Generally, use the Log.v() Log.d() Log.i() Log.w() and Log.e() methods.
The order in terms of verbosity, from least to most is ERROR, WARN, INFO, DEBUG, VERBOSE. Verbose should never be compiled into an application except during development. Debug logs are compiled in but stripped at runtime. Error, warning and info logs are always kept. ”

我個人大致翻譯(不準確的話,希望提出建議):通常可以使用  ERROR, WARN, INFO, DEBUG, VERBOSE 五種log ,從error到verbose,冗長度依次增加(換句話說就是重要程度一次遞減),Verbose除了在開發階段不能被編譯進程序當中去,debug會編譯進程序但是運行時不會被包含,error和warning永遠保持

實例

Log.i("yourDemo","this is my log");


沒有LOGCAT窗口的朋友可以在window菜單中的show view中調出窗口

五個圓圈分別可以過濾五種不同的log

注意右邊的綠色加號,單擊可以自定義自己的過濾器,名字隨便起就好了

by Log Tag欄目中 選擇你要創建的過濾規則,比如你要過濾出所遇TAG標記爲“yourDemo”的log,就可以在裏面輸入yourDemo了

/*********************************************************************************************************************************************************************************/

sundy最後留了小練習就是利用LOG顯示出activity的生命週期,感覺對於初學者來講很值得在做一下

這是關於這個demo的鏈接,歡迎大家觀看


點擊打開鏈接
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章