用Kotlin记录

时间:2017-05-24 12:45:02

标签: android kotlin

因为我们使用Log.e()来记录java代码的错误。我在寻找与Kotlin相同的功能。虽然我找到了Logger类

val Log = Logger.getLogger(MainActivity::class.java.name)
Log.warning("Hello World")

它显示了android studio logcat中的日志。

但是有没有办法以Log.e()的方式用红色打印日志?

4 个答案:

答案 0 :(得分:6)

Logger.getLogger(Test::class.java.name).warning("Hello..") 将在Kotlin中完美运作。

在Kotlin,我们还有一个Logger类来记录一些东西。

const R = require('ramda');

const array = ["foo", "bar", "foobar"];

// Need to put them in a nice html li ?
// this works with a warning that you 
// need a unique key to each item.
const renderList = R.map( item => <li>{item}</li> );

// we can solve it like that.
const mapIndexed = R.addIndex(R.map)
const renderListIndexed = mapIndexed((item, id) => <li key={id}>{item}</li>

否则,您必须使用其他库,例如:kotlin-logging,anko logging等。

答案 1 :(得分:4)

您可以在KOTLIN

中使用此Log.d(TAG, "my Message")之类的日志

答案 2 :(得分:3)

您可以使用Kotlin中的所有Java类,因此java中的Log.e( )与Kotlin中的Log.e( )完全相同。

如果您想要自动推断标记字符串等额外功能,可以使用类似AnkoLogger

的内容

答案 3 :(得分:2)

由于Kotlin保证100%可与Java和Android互操作,您也可以在kotlin中使用Log或任何java类。

如果您坚持使用Logger类,则可以使用Log#e

获得与Logger#severe相同的输出

无论如何,我建议使用Timber或类似的。使用和使用有许多优点。 Android的Log类会在任何环境中记录您的所有输出,并且还会消耗您应该在生产中消除的机器资源。