KotlinのExtensionを使って、楽にログ出力する方法です。
クラス名を記述しなくても、呼び出したクラスの名前を出力できます。
[ExAny.kt]
import android.util.Log
import info.ecolife_lab.soaprecord.BuildConfig
fun Any.logD(message: String) {
if (BuildConfig.DEBUG) {
Log.d("###アプリ名", "[" + this.javaClass.simpleName + "]: $message")
}
}
・使用方法
// Activity / Fragment / Modelのクラスどこでも呼び出せる
logD("ログ出力したい内容を記述")
・出力
2021-05-09 08:03:19.796 12572-12572/info.ecolife_lab.soaprecord D/###SoapRecord: [MainActivity]: ログ出力したい内容を記述
・補足
Anyクラスで呼び出したクラスのインスタンスからクラス名を取得しています。
また、C言語には__LINEや__FILEがあり、これで実行中の行数やファイル名を取得できるようです。
試していないのですが、以下を参考にしたらAnyクラスを使用せずとも同じようなことができそうでした。暇なときにためしてみよう( ˘ω˘)スヤァ
https://stackoverflow.com/questions/1346391/line-equivalent-in-java
以上、参考になれば幸いです(*’ω’*)

コメントを残す