Android中的管理工具類log可以這麼些.....

來源:互聯網
上載者:User

標籤:android   message   logcat   warning   error   

 

做Android開發的一個重要的工具就是locat,這是代碼調試,出錯排除定位等必不可少的工具,也是習以為常的,

首先我就來先說一下log吧。

它屬於android.util.log類。常用的列印日誌的方法有5個如下

     Log.v(tag,message) ;   //verbose模式,列印最詳細的資訊

     Log.d(tag,message) ;   //debug模式,列印調試的資訊

     Log.i(tag,message) ;    //info  

     Log.w(tag,message) ;   //warning  ,列印警告的資訊

     Log.e(tag,message) ;   //error ,列印錯誤資訊

 其中 tag 為調試資訊標籤名稱,也就是logcat的過濾標籤,

 message也就是調試的時候列印的資訊,

 

輸出資訊層級 error> warn > info >debug> verbose(可作為篩選資訊的參考)。

 

好了介紹完這些,那麼問題來了(^_^)

每次想調試都要寫一句什麼 Log.v("tag","調試....");然後再過濾 tag,要是一個應用那麼多的類這樣每次都寫著一句話會不會很煩?同時應用發布的時候要一句一句的隱藏掉這些log,更煩。

 那麼 我們可以考慮這麼寫:

 直接寫一個Log工具類:

public class MyLog {
 static boolean state = true;// 如果要發布應用,直接改掉 state =false就不會有日誌輸出。
 public static void d( String str){
   if(state){
    Log.i("n你的應用程式名稱:" , str);
   }
 }

}

那麼這樣的話每次調用MyLog.d(String str)方法就可以了,同時一個應用在Logcat的過濾器裡之寫一個Tag 然後你的應用的整個log都會出來,是不是方便很多,而且偵錯模式的時候state改為true,就會有日誌,發布的時候改為false所有日誌就會隱藏,會不會方便很多。

 

如果說這樣分辨不清楚是一個應用中哪個類的日誌,那麼有更好的方法:

public class  MyLog {            /**       * 是否開啟debug       */      public static boolean isDebug= true ;               public static void d(Class<?> clazz,String msg){          if (isDebug){              Log.e(clazz.getSimpleName(),msg+ "" );          }      }

}

這個類比上面的那個更加好用,學過java的人都知道 clazz.getSimpleName()的作用是得到類的簡體名稱。那麼這也更方便的區分了是哪個類的日誌,更方便更清晰。

好了,到這裡就應該結束了,本來log就是很簡單的東西,我這裡羅裡吧嗦的說了這麼多,其實也就是說寫代碼我們必須要種能省就省,記憶體能省就省,在看得懂的前提下代碼量能省就省,,做一個環保的程式猿。

本文出自 “知行合一” 部落格,請務必保留此出處http://poarry.blog.51cto.com/5970996/1570742

Android中的管理工具類log可以這麼些.....

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.