timberkt
1.5.1
傑克·沃頓(Jake Wharton)的木材圖書館很棒。這是一個適用於Java的API的Java庫,但在Kotlin中使用時,這並不那麼慣用。
該庫以木材為基礎,使用Kotlin易於使用的API。您沒有使用格式參數,而是傳遞僅當消息記錄時評估的lambda。
onCreate
中的任何Tree
實例。 // Standard timber
Timber .d( " %d %s " , intVar + 3 , stringFun())
// Kotlin extensions
Timber .d { " ${intVar + 3 } ${stringFun()} " }
// or
d { " ${intVar + 3 } ${stringFun()} " }
在所有三種情況下,將記錄相同的消息和標籤。
Kotlin擴展具有更方便的寫作優勢,並且在某些情況下也更具性能。僅在記錄消息時才評估傳遞的塊,即使消息記錄到多個樹,也只能評估塊一次。所有擴展方法都是內襯的,因此使用此庫沒有罰款。
記錄異常對像以相同的方式工作:
// Standard timber
Timber .e(exception, " %d exceptions " , errorCount)
// Kotlin extensions
Timber .e(exception) { " $errorCount exceptions " }
// or
e(exception) { " $errorCount exceptions " }
Timber帶有六個棉絨檢查,可幫助您發現對日誌調用的不正確用法。
除了長期的自定義標籤外,此庫中這些檢查的錯誤都不是可能的。您可以執行傳遞給日誌擴展的lambdas內部的任意代碼,並且在發布代碼中沒有性能問題的風險,因為除非打印消息,否則不會評估塊。
木材的Kotlin擴展與Maven Central,Jcenter和Jitpack分發。
implementation ' com.github.ajalt:timberkt:1.5.1 '
該文檔在此處在線託管。
Copyright 2017-2018 AJ Alt
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.