超好用的Android日誌打印框架--Logger

Android提供的打印日誌的方法是通過android.util.Log類來打印我們需要的日誌信息,當打印的日誌很多的時候,我們需要查看是哪一行就比較困難,除非你打上了標記,但是這樣會比較麻煩。這個時候我們可以使用Logger來替代android.util.Log的日誌打印。

先看一下效果圖:
這裏寫圖片描述

線程名、那個類的那個方法、哪一行都打印出來了,還可以點擊直接跳到打印的位置,有沒有很高大上的感覺?
github地址: https://github.com/orhanobut/logger

配置
直接在app的build.gradle裏面添加如下代碼

dependencies {
    compile 'com.orhanobut:logger:1.15'
}

或者通過choose library dependency搜索添加
這裏寫圖片描述

使用
使用方法非常簡單,甚至比android.util.Log還要簡單,只需要通過調用com.orhanobut.logger.Logger該類的方法即可,該類也提供了v,d,i,w,e等方法。

Logger.v("hello world");
Logger.d("hello world");
Logger.i("hello world");
Logger.w("hello world");
Logger.e("hello world");

打印的效果圖
這裏寫圖片描述

是不是用起來很爽,tag都不用設置,可以看到tag默認爲PRETTYLOGGER。當然你也可以自己定義tag

Logger.t("MY_TAG").v("hello world"); //設置tag爲MY_TAG,並打印

效果如下
這裏寫圖片描述

當然,這樣它會默認在PRETTYLOGGER後面拼接你的tag打印。不要慌,PRETTYLOGGER也是可以自定義的。只需要加上如下代碼:

Logger.init("locationtest");

效果如下
這裏寫圖片描述
ok,搞定。

Logger還提供了e(Throwable throwable, String message, Object… args)方法,將異常信息打印出來

try {
     String s = null;
     s.toString();
}catch (NullPointerException e){
     Logger.e(e,"test----");
}

效果如下
這裏寫圖片描述

還有將json和xml格式化打印的效果

String json = "{\n" +
        "\"number\":123,\n" +
        "\"object\":{\n" +
        "\"a\": \"b\",\"c\": \"d\"}," +
        "\"string\":\"Hello World\"\n" +
        "}";
Logger.json(json);

String xml = "<map><key>message</key></map>";
Logger.xml(xml);

效果圖
這裏寫圖片描述

Log打印封裝

我們在開發過程中,會打印很多日誌信息,這些信息可能會包含一些敏感信息,而我們在把應用打包發佈的時候肯定不希望這些日誌繼續打印(可能會被同行看到),這個時候可以封裝一個日誌打印的工具類。

package com.chengliang0315.locationtest.util;

import com.chengliang0315.locationtest.BuildConfig;
import com.orhanobut.logger.Logger;

/**
 * 日誌打印工具類
 *
 * @author chengliang0315
 * @see <a>http://blog.csdn.net/chengliang0315</a>
 */
public class LogUtils {
    /**
     * 是否開啓debug
     * 注意:使用Eclipse打包的時候記得取消Build Automatically,否則一直是true
     */
    public static boolean isDebug= BuildConfig.DEBUG;

    /**
     * 錯誤
     */
    public static void e(String tag,String msg){
        if(isDebug){
            Logger.t(tag).e(msg+"");
        }
    }
    /**
     * 調試
     */
    public static void d(String tag,String msg){
        if(isDebug){
            Logger.t(tag).d( msg+"");
        }
    }
    /**
     * 信息
     */
    public static void i(String tag,String msg){
        if(isDebug){
            Logger.t(tag).i( msg+"");
        }
    }
}

你只需要在調用LogUtils來打印日誌即可,這樣就方便管理了。當然在使用Eclipse打包的時候記得取消Build Automatically,否則一直是true
這裏寫圖片描述

發佈了35 篇原創文章 · 獲贊 48 · 訪問量 25萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章