Tutorial Monitorización Crashes con ACRA
Todo buen programador se tiene que equivocar, éste es el fundamento de un buen aprendizaje. Toda las apps por lo menos las mías producen Crashes (esos “mensajitos odiosos” que te obligan a cerrar la aplicación) en sitios inesperados. Para poder controlar los Crashes remotamente podemos hacer uso de esta potente herramienta llamada ACRA ( Application Crash Report for Android ), la cual nos generará un documento en google drive con información detallada de los crashes.
Lo primero que haremos será descargarnos la librería en nuestro PC desde aquí. Una vez descargada la descomprimimos, generándose tres carpetas: build, doc y src.
Preparando Google Drive
Abrimos Google Drive e importamos el archivo CrashReports-Template que tenemos dentro de la carpeta doc. Una vez importada le cambiamos el nombre que queramos, en mi caso le pondré CrashReportEjemplAcra
Pinchamos con el botón derecho al archivo importado y marcamos.
Una vez dentro pulsamos en Tools -> Create a Form
Se nos generará un formulario como este, en este paso guardaros la clave del formulario, importante a la hora de implementar nuestro código en nuestra App.
Guardamos el formulario y pasamos a la siguiente parte.
Inserción del código en nuestra App
Esta parte es la más sencilla de todas, para poder testear y verificar que funciona la librería, crearemos un nuevo proyecto llamado TestAcra.
Dentro de la Activity principal nos creamos un botón que generé un Crash. En mi ejemplo para generar el Crash intento obtener un dato de un vector vacío.
Introducimos en la carpeta libs la librería acra-4.4.0
Pulsamos boton derecho y pinchamos en Build Path -> Add to Build Path
El siguiente paso es crearnos una nueva clase dentro de nuestro proyecto al que llamaremos AcraClass E introducimos el siguiente código: package com.example.testacra; import org.acra.ACRA; import org.acra.annotation.ReportsCrashes; import android.app.Application; @ReportsCrashes(formKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX") public class AcraClass extends Application { @Override public void onCreate() { super.onCreate(); // The following line triggers the initialization of ACRA ACRA.init(this); } } Por último nos queda modificar el AndroidMainfest.xml, introducimos las siguientes líneas de código. <uses-permission android:name="android.permission.VIBRATE"/> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:name ="AcraApp">
Y esto es todo, tras generar el Crash, podemos observar en nuestra tabla de Google Drive que se ha introducido una nueva fila con toda la información del Crash.
Para Más información ver la página oficial de ACRA
Podéis descargaros el proyecto desde este enlace