Respuestas:
Mira dentro android.util.Log
. Le permite escribir en el registro con varios niveles de registro, y puede especificar diferentes etiquetas para agrupar la salida. Por ejemplo
Log.w("myApp", "no network");
generará una advertencia con la etiqueta myApp y el mensaje no network.
w
en Log.w(...)
stands de advertencia. Hay más versiones: d
- depuración, e
- error, i
- información, v
- detallado, wtf
- Qué falla tan terrible. ;-)
La etiqueta solo se usa para encontrar fácilmente su salida, porque la salida de LogCat a veces puede ser muy larga. Puedes definir en algún lugar de tu clase:
Private static final String TAG = "myApp";
y úsalo cuando depures
Log.v (TAG, "hizo algo");
También puede aplicar un filtro para buscar solo la etiqueta.
Uso android.util.Log
y los métodos estáticos definidos allí (p. Ej. e()
, w()
).
import android.util.Log;
y entonces
Log.i("the your message will go here");
Por favor, vea los registros de esta manera,
Log.e("ApiUrl = ", "MyApiUrl") (error)
Log.w("ApiUrl = ", "MyApiUrl") (warning)
Log.i("ApiUrl = ", "MyApiUrl") (information)
Log.d("ApiUrl = ", "MyApiUrl") (debug)
Log.v("ApiUrl = ", "MyApiUrl") (verbose)
Puedes usar mi biblioteca llamada RDALogger. Aquí está el enlace github .
Con esta biblioteca, puede registrar su mensaje con el nombre del método / nombre de clase / número de línea y enlace de anclaje. Con este enlace, cuando hace clic en el registro, la pantalla va a esta línea de código.
Para usar la biblioteca, debe hacer las implementaciones a continuación.
en el nivel de raíz gradle
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
en el nivel de aplicación gradle
dependencies {
implementation 'com.github.ardakaplan:RDALogger:1.0.0'
}
Para inicializar la biblioteca, debe comenzar así (en Application.class o antes del primer uso)
RDALogger.start("TAG NAME").enableLogging(true);
Y luego puedes registrar lo que quieras;
RDALogger.info("info");
RDALogger.debug("debug");
RDALogger.verbose("verbose");
RDALogger.warn("warn");
RDALogger.error("error");
RDALogger.error(new Throwable());
RDALogger.error("error", new Throwable());
Y finalmente, la salida muestra todo lo que desea (nombre de clase, nombre de método, enlace de anclaje, mensaje)
08-09 11:13:06.023 20025-20025/com.ardakaplan.application I/Application: IN CLASS : (ENApplication.java:29) /// IN METHOD : onCreate
info
String one = object.getdata();
Log.d(one,"");
Recientemente encontré este enfoque para escribir registros en Android, que creo que es súper increíble.
public static final boolean FORCED_LOGGING = true;
private static final int CALLER_STACK_INDEX = 3;
public static void showLogs(String message) {
if (FORCED_LOGGING) {
StackTraceElement caller = Thread.currentThread().getStackTrace()[CALLER_STACK_INDEX];
String fullClassName = caller.getClassName();
String className = fullClassName.substring(fullClassName.lastIndexOf('.') + 1);
String methodName = caller.getMethodName();
int lineNumber = caller.getLineNumber();
Log.i("*** " + className + "." + methodName + "():" + lineNumber + "\n" , message);
}
}
log.d
?