Vous pouvez sortir le journal sur Android en écrivant Log.d (TAG," some log text ... ")
, mais il était difficile de déclarer la variable TAG
à chaque fois, donc en fonction de l'appelant. J'ai pensé que ce serait pratique si le nom du fichier et le numéro de ligne étaient automatiquement acquis et que «TAG» était défini. ** C'est fait. ** Créez une classe dans Texto et créez une méthode comme celle ci-dessous. Appelons cela la classe «Logger».
Logger.java
public class Logger {
public static void log(String text) {
StackTraceElement elem = Thread.currentThread().getStackTrace()[2];
String tag = elem.getFileName();
Log.d(tag, text);
}
}
Appelez ensuite cette méthode où vous souhaitez cracher le journal.
Logger.log("hello world");
Exemple de sortie
09-15 19:52:03.270 15378-15378/com.niusounds.myapps D/MainActivity.java: hello world
Facile! !!
À propos, appeler le même code depuis Kotlin a donné des résultats différents. Dans le cas de Kotlin, il semble que vous deviez obtenir Thread.currentThread (). StackTrace [3]
.
Log.kt
fun log(text: String) {
val caller = Thread.currentThread().stackTrace[3]
val tag = "${caller.fileName}:${caller.lineNumber}"
Log.d(tag, text)
}
Recommended Posts