標籤:使用者 tag inf 建立 分析 rbo blog ted 進程
Android中的日誌工具類是Log(android.util.Log),這個類提供了以下幾個方法來供我們列印日誌。
? Log.v():這個方法用於列印那些最為瑣碎的,意義最小的日誌資訊。對應層級verbose,是android日誌裡面層級最低的一種。
? Log.d():這個方法用於列印一些調試資訊,這些資訊對偵錯工具和分析問題應該是有協助的。對應層級debug,比verbose高一級。
? Log.i():這個方法用於列印一些比較重要的資料,這些資料應該是非常想看的,可以協助分析使用者行為的那種。對應層級info,比debug高一級。
? Log.w():這個方法用於列印一些警告資訊,提示程式在這個地方可能會有潛在的風險,最好去修複一下這些出現警告的地方。對應層級warn,比info高一級。
? Log.e():這個方法用於列印程式中的錯誤資訊,比如程式進入到了catch語句當中。當有錯誤資訊列印出來的時候,一般都代表你的程式出現嚴重問題了,必須儘快修複。對應層級error,比warn高一級。
protected void onCreate(Bundle saveInstanceState){ super.onCreate(saveInstanceState); Log.d("HelloWorldActivity","onCreate execute"); Log.i("HelloWorldActivity","onCreate execute"); Log.w("HelloWorldActivity","onCreate execute"); Log.e("HelloWorldActivity","onCreate execute");}
Log方法中傳入了兩個參數,第一個參數時tag,一般傳入當前的類名就好,主要用於對列印資訊進行過濾。第二個參數是msg,即想要列印的具體內容。
不僅能看到列印日誌的內容和Tag名,就連程式的包名、列印的時間以及應用程式的進程號都可以看到。如果LogCat中沒有列印出任何資訊,有可能是因為當前的裝置失去焦點了。這是只需要進入DDMS視圖,在Devices視窗中點擊一下當前的裝置,列印資訊就會出來了。
過濾器的使用
目前有兩個過濾器,All messeage過濾器也就相當於沒有過濾,會把所有的日誌都顯示出來。com.example.activitytest是我們運行ActivityTest項目是自動建立的,點擊這個過濾器就可以只看到ActivityTest程式中列印的日誌。
點擊圖中的“+”號,會彈出一個過濾器配置介面。我們給過濾器起名叫data,並讓它對名為data的Tag進行過濾。
點擊OK,會多出一個data過濾器,當點擊這個過濾器的時候,剛剛在onCreate()方法裡列印的日誌沒了,這是因為data這個過濾器只會顯示Tag名為data的日誌。可以嘗試把onCreate()方法中把列印日誌的語句改成Log.d("data","onCreate execute"),然後再次運行程式,就會在data過濾器下看到這條日誌了。
看完過濾器,再看一下LogCat中的記錄層級控制。LogCat中主要有5個層級,分別對應上面5個方法。
當選擇verbose層級時,也就是最低層級,所有verbose及以上層級方法都會列印出來。
Android的日誌工具Log