第一行代碼-13.3 定製自己的日誌工具

  在調試的時候,我們往往會使用Log,也就是日誌。它也有一個缺陷,如果你不想在項目上線之後依然打印這些日誌(有的可能涉及到機密),就必須一行行地刪除掉這些代碼,非常麻煩。有沒有什麼辦法可以在項目上線之後自動屏蔽這些日誌呢?
  看起來是很複雜的功能,其實自己創建一個LogUtil類就可以實現了:

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 final 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);
        }
    }
}

  可以看到LEVEL默認值爲VERBOSE。這樣在工程調試的過程中,使用LogUtil.x(tag, msg)就可以輸出所有日誌。在工程發佈之前,把LEVEL改成NOTHING,就不會輸出日誌信息了。

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