Android
Herramientas de informes de bloqueo
Buscar..
Observaciones
El mejor wiki completo está disponible aquí en github .
Tejido - Crashlytics
Fabric es una plataforma móvil modular que proporciona kits útiles que puede mezclar para construir su aplicación. Crashlytics es una herramienta de informe de fallas y problemas provista por Fabric que le permite hacer un seguimiento y monitorear sus aplicaciones en detalle.
Cómo configurar Fabric-Crashlytics
Paso 1: Cambia tu build.gradle
:
Agrega el plugin repo y el plugin gradle:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
// The Fabric Gradle plugin uses an open ended version to react
// quickly to Android tooling updates
classpath 'io.fabric.tools:gradle:1.+'
}
}
Aplicar el plugin:
apply plugin: 'com.android.application'
//Put Fabric plugin after Android plugin
apply plugin: 'io.fabric'
Añadir el repositorio de tela:
repositories {
maven { url 'https://maven.fabric.io/public' }
}
Agregue el kit Crashlyrics:
dependencies {
compile('com.crashlytics.sdk.android:crashlytics:2.6.6@aar') {
transitive = true;
}
}
Paso 2: agregue su clave de API y el permiso de INTERNET en AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
... >
<meta-data
android:name="io.fabric.ApiKey"
android:value="25eeca3bb31cd41577e097cabd1ab9eee9da151d"
/>
</application>
<uses-permission android:name="android.permission.INTERNET" />
</manifest>
Paso 3: inicie el kit en tiempo de ejecución en su código, por ejemplo:
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Init the KIT
Fabric.with(this, new Crashlytics());
setContentView(R.layout.activity_main);
}
}
Paso 4: Proyecto de construcción. Para construir y ejecutar:
Usando el plugin IDE de tela
Los kits se pueden instalar utilizando el complemento Fabric IDE para Android Studio o IntelliJ siguiendo este enlace.
Después de instalar el complemento, reinicie Android Studio e inicie sesión con su cuenta utilizando Android Studio .
(tecla corta> CTRL + L
)
Luego mostrará los proyectos que tiene / el proyecto que abrió, seleccione el que necesita y haga clic en siguiente ... a continuación.
Seleccione el kit que desea agregar, para su ejemplo es Crashlytics :
Luego presione Install
. No es necesario que lo agregue manualmente esta vez, como el complemento gradle anterior, en su lugar, se construirá para usted.
¡Hecho!
Informe de Accidentes con ACRA
Paso 1: Agregue la dependencia del último ACRA AAR a su aplicación gradle (build.gradle).
Paso 2: en su clase de aplicación (la clase que extiende la aplicación; si no la crea) Agregue una anotación @ReportsCrashes
y anule el método attachBaseContext()
.
Paso 3: Inicialice la clase ACRA en su clase de aplicación
@ReportsCrashes(
formUri = "Your choice of backend",
reportType = REPORT_TYPES(JSON/FORM),
httpMethod = HTTP_METHOD(POST/PUT),
formUriBasicAuthLogin = "AUTH_USERNAME",
formUriBasicAuthPassword = "AUTH_PASSWORD,
customReportContent = {
ReportField.USER_APP_START_DATE,
ReportField.USER_CRASH_DATE,
ReportField.APP_VERSION_CODE,
ReportField.APP_VERSION_NAME,
ReportField.ANDROID_VERSION,
ReportField.DEVICE_ID,
ReportField.BUILD,
ReportField.BRAND,
ReportField.DEVICE_FEATURES,
ReportField.PACKAGE_NAME,
ReportField.REPORT_ID,
ReportField.STACK_TRACE,
},
mode = NOTIFICATION_TYPE(TOAST,DIALOG,NOTIFICATION)
resToastText = R.string.crash_text_toast)
public class MyApplication extends Application {
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
// Initialization of ACRA
ACRA.init(this);
}
}
Donde AUTH_USERNAME y AUTH_PASSWORD son las credenciales de tus backends deseados.
Paso 4: definir la clase de aplicación en AndroidManifest.xml
<application
android:name=".MyApplication">
<service></service>
<activity></activity>
<receiver></receiver>
</application>
Paso 5: asegúrese de tener permiso de internet
para recibir el informe de la aplicación bloqueada
<uses-permission android:name="android.permission.INTERNET"/>
En caso de que desee enviar el informe silencioso al backend, simplemente use el método a continuación para lograrlo.
ACRA.getErrorReporter().handleSilentException(e);
Forzar un choque de prueba con tela
Agregue un botón que puede tocar para desencadenar un bloqueo. Pegue este código en su diseño donde le gustaría que aparezca el botón.
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="Force Crash!"
android:onClick="forceCrash"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
Lanzar un RuntimeException
public void forceCrash(View view) {
throw new RuntimeException("This is a crash");
}
Ejecute su aplicación y toque el nuevo botón para provocar un bloqueo. En un minuto o dos, debería poder ver el bloqueo en su panel de control de Crashlytics y recibir un correo.
Captura bloqueos utilizando Sherlock
Sherlock captura todos tus choques y los informa como una notificación. Cuando toca la notificación, se abre una actividad con todos los detalles del fallo junto con la información del dispositivo y la aplicación
¿Cómo integrar Sherlock con tu aplicación?
Solo necesita agregar Sherlock como una dependencia de Gradle en su proyecto.
dependencies {
compile('com.github.ajitsing:sherlock:1.0.1@aar') {
transitive = true
}
}
Después de sincronizar tu estudio de Android, inicializa Sherlock en tu clase de Aplicación.
package com.singhajit.login;
import android.app.Application;
import com.singhajit.sherlock.core.Sherlock;
public class SampleApp extends Application {
@Override
public void onCreate() {
super.onCreate();
Sherlock.init(this);
}
}
Eso es todo lo que necesitas hacer. También Sherlock hace mucho más que informar un accidente. Para ver todas sus características, eche un vistazo a este artículo .
Manifestación