Solución:
Tu podrías intentar
StackTraceElement[] stacktrace = Thread.currentThread().getStackTrace();
StackTraceElement e = stacktrace[2];//maybe this number needs to be corrected
String methodName = e.getMethodName();
Aquí hay una función que escribí para registrar el nombre de la función de la función que la llama. Ejecuta el seguimiento de la pila hasta que encuentra una función llamada logIt, luego muestra el siguiente nombre. Es un truco sucio, así que no lo hagas a menos que lo estés usando para depurar.
private static void logIt() {
StackTraceElement[] stacktrace = Thread.currentThread().getStackTrace();
boolean logged = false;
boolean foundMe = false;
for(int i=0; i<stacktrace.length; i++) {
StackTraceElement e = stacktrace[i];
String methodName = e.getMethodName();
if (foundMe) {
if (!methodName.startsWith("access$")) {
Log.i(TAG, String.format(Locale.US, "%s.%s", e.getClassName(), methodName));
logged = true;
break;
}
} else {
if (methodName.equals("logIt")) {
foundMe = true;
}
}
}
if (!logged)
Log.e(TAG, "unlogged call");
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)