Kotlinを使用してコンソール(Android Studio)にstrを印刷する必要があります。私は試しました:
Log.v()
Log.d()
Log.i()
Log.w()
Log.e()
メソッド。ただし、Javaでのみ機能するようです。 Kotlinを使用して印刷するには何を使用すればよいですか?ありがとう
いくつかの方法があります。
たとえばLog.d("TAG", "message");
を使用できますが、最初にインポートする必要がありますLog。
import Android.util.Log
{...}
Log.d("TAG", "message")
{...}
ソース: https://developer.Android.com/reference/Android/util/Log.html
kotlinのprintおよびprintln関数も使用できます。
例:
{...}
print("message")
println("other message")
{...}
ソース: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.io/
androidKotlinは非推奨であり、代わりに Anko を使用します。
https://github.com/Kotlin/anko/wiki/Anko-Commons-%E2%80%93-Logging
class SomeActivity : Activity(), AnkoLogger {
private fun someMethod() {
info("London is the capital of Great Britain")
debug(5) // .toString() method will be executed
warn(null) // "null" will be printed
}
}
すべてのプロジェクトのクラスでログタグを宣言することを避けるために、具体化された型パラメーターを使用する拡張関数をいくつか作成しました。基本的な考え方は、次のスニペットに示されています。
inline fun <reified T> T.logi(message: String) = Log.i(T::class.Java.simpleName, message)
基本的に、次の呼び出し(W/O外部依存関係)でlogcatに何かを記録できます。
logi("My log message")
Gist here を見つけることができます。 Gistで宣言された関数は、許可されている場合、もう少し詳しく説明します。
Anko
libraryを使用して実行できます。次のようなコードがあります:
class MyActivity : Activity(), AnkoLogger {
private fun someMethod() {
info("This is my first app and it's awesome")
debug(1234)
warn("Warning")
}
}
または、 StaticLog
と呼ばれるKotlinライブラリで書かれたこの小さなコードを使用することもできます。コードは次のようになります。
Log.info("This is an info message")
Log.debug("This is a debug message")
Log.warn("This is a warning message","WithACustomTag")
Log.error("This is an error message with an additional Exception for output", "AndACustomTag", exception )
Log.logLevel = LogLevel.WARN
Log.info("This message will not be shown")\
2番目の解決策は、次のようなロギングメソッドの出力形式を定義する場合に適しています。
Log.newFormat {
line(date("yyyy-MM-dd HH:mm:ss"), space, level, text("/"), tag, space(2), message, space(2), occurrence)
}
または、フィルターを使用します。例:
Log.filterTag = "filterTag"
Log.info("This log will be filtered out", "otherTag")
Log.info("This log has the right tag", "filterTag")
すでにJake WhartonのTimber
ロギングライブラリを使用している場合は、このプロジェクトを確認してください: https://github.com/ajalt/timberkt 。
次も確認してください: KotlinとAndroidでのログ:AnkoLogger vs kotlin-logging
それが役立つことを願っています
この時点で(kotlinプラグインを使用したAndroid studio 2.3.3)、Log.i(TAG、「Hello World」)が機能します。 Android.util.Logをインポートします