Android調試之查看日志文件技巧
編程調試是每一個編程人員必備的編程技巧,而在編程調試中,我們最最常用也是最最有效的的調試方法之一就是輸出信息,有過java編程經驗的同學應該知道,在java再發的過程中,我們經常會通過在程序可能出現問題的位置處通過
System.out.println("aaaaaaaaaaaaaaaaaaaaaaa");
輸出調試信息來調試程序,通過console控制臺,我們就可以輕易得知我們的程序到目前位置處是否運行正常
然而,當我們轉戰android時,我們發現,通過單純的System.out我們已經沒有辦法在console獲取信息,為了獲取必要的調試信息,我們要用到android的LogCat工具
下面我們來看一下android開發中如何查看app運行日志:
1.在android開發中,我們依然可以使用System.out來經行調試信息的輸出,只是這時的調試信息不再console中,而是在LogCat中;
2.我們也可以使用andorid工具包中的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.
當我們要輸出信息時,直接使用Log中提供的Log.v() Log.d() Log.i() Log.w() and Log.e()即可
- @Override
- protected void onResume() {
- Log.i(Tag, "first activity--------onResume()");
- System.out.println("first activity--------onResume()");
- super.onResume();
- }
- @Override
- protected void onStart() {
- Log.i(Tag, "first activity--------onStart()");
- System.out.println("first activity--------onStart()");
- super.onStart();
- }
- @Override
- protected void onStop() {
- Log.i(Tag, "first activity--------onStop()");
- System.out.println("first activity--------onStop()");
- super.onStop();
- }
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- Log.i(Tag, "first activity--------onCreate()");
- System.out.println("first activity--------onCreate()");
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- }
我們已經把調試信息輸出,那么我們應該如何更好的查看這些信息呢:
首先我們要打開eclipse的LogCat窗口,當我們運行一個app時,我們可以看到這個窗口一次會輸出很多信息,大多數信息對于我們來說是不需要的, 為了更快的得到我們期望的信息,這里我們就要用到日志過濾器filter,如下圖所示,通過加號,我們就可以新建一個過濾器了
新建如下:
如:當你想看System.out的信息時,在Filter Name處填System.out(這里注意,這個名字是隨便填寫的)
在by Log Tag處填寫:System.out這個是System.out.println在android中的Tag標志
當你想看Log輸出的信息時,比如你輸出的信息是:Log.d("Test","this is a Test");
在Filter Name處填寫:Testaa,在by Log Tag處填寫:Test.