DesarrolloLibre

Desarrollo Web, Android y mucho más

13-02-2014

Si eres nuevo desarrollando para Android, seguramente en algún lugar del código de tu aplicación has hecho algo como esto:

System.out.println(message)

Donde message es algún mensaje para imprimir por la consola de Eclipse, dicho mensaje ofrece alguna información clave al momento de desarrollar, un valor clave, una bandera, etc. Pero vemos que al momento de ejecutar la impresión por pantalla, esta no aparece por la consola. La API de Android incorpora la Clase Log para enviar este tipo de información, y por lo tanto es lo que debemos usar al momento de desarrollar.

Métodos de la Clase Log



Metodo Constante Descripsión
Log.e() ERROR Este nivel de log debe usarse cuando algo fatal ocurre en la aplicación; en otras palabras, al ocurrir algún error o issies, normalmente es buena idea usar este nivel para reportarlos.
Log.w() WARNING Este nivel debe usarse cuando ocurre algún cambio serio o inesperado; pero es probable que sea un estado recuperable.
Log.i() INFO Este nivel debe usarse al tratarse de un acontecimiento netamente informativo y que no necesariamente sea un error.
Log.d() DEBUG Este nivel debe usarse cuando se desee conseguir una mayor información; algo relevante que esta ocurriendo cuando la aplicación está ejecutándose en el dispositivo.

Información de los métodos de la Clase Log

En Android, todos los mensajes de log llevarán asociada la siguiente información:

  • Fecha: Hora del mensaje log.
  • Criticidad: Nivel del mensaje log.
  • PID.
  • Tag: Etiqueta identificativa del mensaje log.
  • Mensaje: Texto del mensaje log.

Parámetros de los métodos de la Clase Log

Cualquiera de los métodos explicados recibe 2 parámetros como mínimo, el tag y el mensaje:

  • (String) tag: Usado para identificar el mensaje; es una buena práctica declararlos como una constante al inicio de la clase:
    private static final String TAG = "MyTag";
            
  • (String) msg: El mensaje que se desea registrar.
  • (Throwable) tr: La excepción que se desea registrar (opcional).

Para ver cualquiera de estos mensajes es necesario tener la consola LogCat habilitada. Para ello tendremos que dirigirnos a:

Windows >> Show View >> Android >> Other >> LogCat

Ejemplos

Un ejemplo práctico de lo explicado:

 
	private static final String TAG = "MyTag";
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
 
        Log.e(TAG, "Mensaje de error");
        Log.w(TAG, "Mensaje de warning");
        Log.i(TAG, "Mensaje de información");
        Log.d(TAG, "Mensaje de depuración");
    }

Como podemos ver, imprimimos todos los métodos de la Clase Log ya explicados; al observar la consola LogCat veremos algo como esto:

log messages android

Imagen 1: Logs de ejemplos.

Cómo se puede observar, para cada mensaje se muestra toda la información que indicamos al principio del artículo, además de estar diferenciados por un color.

Existe una variante para cada uno de los métodos de la Clase Log ya explicados, consiste en agregar un parámetro extra del tipo Throwable:

 
	private static final String TAG = "MyTag";
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
		
		try
		{
			int a = 1/0;
		}
		catch(Throwable t)
		{
				Log.e(TAG, "Mensaje de error", t);
				Log.w(TAG, "Mensaje de warning", t);
				Log.i(TAG, "Mensaje de información", t);
				Log.d(TAG, "Mensaje de depuración", t);
		}
		 

    }

Aunque la forma correcta sería solo utilizar el método Log.e():

 
	private static final String TAG = "MyTag";
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
		
		try
		{
			int a = 1/0;
		}
		catch(Throwable t)
		{
				Log.e(TAG, "Mensaje de error", t);
		}
		 

    }
}

Si ejecutamos el código anterior, observaremos que se ha agregado la excepción a nuestra traza:

log error android

Imagen 2: Log de error, ejemplo.

Conclusiones

Utilizar estos Log provistos por la API de Android, se traducen como una herramienta sencilla pero muy valiosa la hora de depurar, registrar errores o trazas de ejecución informativas de nuestras aplicaciones.

Ayúdanos a seguir creciendo

Publicidad

Give me for a beer!

Algunos recursos que te pueden interesar

Creando increibles Drawer en Android con MaterialDrawer

Creando increibles Drawer en Android con MaterialDrawer

Paleta de colores para el Material Design

Paleta de colores para el Material Design

Librería oficial de PayPal para Android

Librería oficial de PayPal  para Android

Algunos artículos que te pueden interesar

Cómo incrustar un video de Youtube en Android

Cómo incrustar un video de Youtube en Android

Se explica cómo incrustar un video de Youtube en una aplicación Android empleando la API nativa de Youtube creada por Google.

Andrés Cruz 20-10-2016

Cómo crear un lector de códigos QR en Android con Android Studio

Cómo crear un lector de códigos QR en Android con Android Studio

Andrés Cruz 29-08-2016

Cómo crear una notificación personalizada en Android

Cómo crear una notificación personalizada en Android

Se explica cómo crear una notificación personalizada en Android a través de un layout, además se explica los componentes de una notificación y cómo lanzarla.

Andrés Cruz 12-12-2016