1. 程式人生 > >FC 13.3 定製自己的日誌工具

FC 13.3 定製自己的日誌工具

Android自帶的日誌工具已經非常強大了,但是在列印日誌的控制方面還做的不夠好。

當我們編寫一個比較大的專案時,需為了方便除錯會寫很多的日誌,專案完成後除錯的日誌的程式碼肯定要刪掉,但是到了維護的時候又得寫日誌程式碼,這樣就很麻煩。最好的辦法就是在程式上線就把日誌遮蔽掉。

定製日誌工具LogUtil

  • 首先定義六個常量,依次遞增,前五個對應Android中的日誌型別,第六個用於遮蔽日誌。
  • 定義常量level,將level的值定義為上面6個常量之一
  • 提供五個方法,對應Android中的五個日誌方法。每個方法中加入if判斷,只有當level小於等於日誌級別的時候才會列印日誌。
  • (當我們日常開發是將level設定為VERBOSE,即列印所有的日誌)
  • (當專案正式上線的時候將level設定為NOTHING,這樣就會把所有的日誌遮蔽掉)
public class LogUtil {
    public static final int VERBOSE = 1;
    public static final int DEBUG = 2;
    public static final int INFO = 3;
    public static final int WARN = 4;
    public static final int ERROR = 5;
    public static final int NOTHING = 6;

    public static int level = VERBOSE;//用於控制輸出日誌

    public static void v(String tag, String msg) {
        if (level <= VERBOSE) {
            Log.v(tag, msg);
        }
    }

    public static void d(String tag, String msg) {
        if (level <= DEBUG) {
            Log.d(tag, msg);
        }
    }

    public static void i(String tag, String msg) {
        if (level <= INFO) {
            Log.i(tag, msg);
        }
    }

    public static void w(String tag, String msg) {
        if (level <= WARN) {
            Log.w(tag, msg);
        }
    }

    public static void e(String tag, String msg) {
        if (level <= ERROR) {
            Log.e(tag, msg);
        }
    }
}