在我們平時開發(fā)中贴浙,都要進行調(diào)試或者打log測試代碼邏輯砂吞。那么打log日志的時候,誰都想自己的日志更加漂亮崎溃,一目了然蜻直,那么這里就有一款漂亮的log日志庫——Logger。
Logger的Github主頁:https://github.com/orhanobut/logger
官方描述:Simple, pretty and powerful logger for android
Logger能打印的信息包括:
- 線程的信息
- 類的信息
- 方法的信息
- 將 JSON 文本人性化輸出
- 將換行符人性化輸出
- 簡潔的輸出
- 從日志跳轉(zhuǎn)到源碼
1.引用:
implementation 'com.orhanobut:logger:2.2.0'
2.初始化
Logger.addLogAdapter(new AndroidLogAdapter());
3.普通使用
Logger.d("debug")
Logger.e("error")
Logger.w("warning")
Logger.v("verbose")
Logger.i("information")
Logger.wtf("What a Terrible Failure")
這里是對應(yīng)的各個級別的樣式:
4.打印json數(shù)據(jù)或xml數(shù)據(jù)
這里打印json數(shù)據(jù):
Logger.json("[{\n" +
"\t\"id\": 110000,\n" +
"\t\"name\": \"北京市\(zhòng)"\n" +
"}, {\n" +
"\t\"id\": 120000,\n" +
"\t\"name\": \"天津市\(zhòng)"\n" +
"}, {\n" +
"\t\"id\": 130000,\n" +
"\t\"name\": \"河北省\"\n" +
"}, {\n" +
"\t\"id\": 140000,\n" +
"\t\"name\": \"山西省\"\n" +
"}, {\n" +
"\t\"id\": 150000,\n" +
"\t\"name\": \"內(nèi)蒙古自治區(qū)\"\n" +
"}, {\n" +
"\t\"id\": 210000,\n" +
"\t\"name\": \"遼寧省\"\n" +
"}]")
效果樣式:
5.設(shè)置是否打印日志:
在Application中初始化時袁串,可根據(jù)當前環(huán)境是測試還是線上環(huán)境設(shè)置是否打印日志概而。
Logger.addLogAdapter(object: AndroidLogAdapter() {
override fun isLoggable(priority: Int, tag: String?): Boolean {
return false
}
})
6.自定義日志屬性
val formatStrategy: FormatStrategy = PrettyFormatStrategy.newBuilder()
.showThreadInfo(false) // 是否顯示顯示當前線程,默認顯示
.methodCount(0) // 方法棧打印的個數(shù)囱修,默認是 2
.methodOffset(7) // 設(shè)置調(diào)用堆棧的函數(shù)偏移值赎瑰,默認是 0
.tag("My custom tag") // 自定義tag內(nèi)容
.build()
Logger.addLogAdapter(AndroidLogAdapter(formatStrategy))
更多更優(yōu)雅的用法,還可以自己去自定義LogAdapter做到破镰。