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.