Ricerca…


Osservazioni

Il wiki completo migliore è disponibile qui in github .

Tessuto - Crashlytics

Fabric è una piattaforma mobile modulare che fornisce kit utili che puoi mixare per creare la tua applicazione. Crashlytics è uno strumento di segnalazione di arresti anomali fornito da Fabric che consente di monitorare e monitorare le applicazioni in dettaglio.


Come configurare Fabric-Crashlytics

Passaggio 1: modifica il tuo build.gradle :

Aggiungi il repository plugin e il 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.+'
  }
}

Applica il plugin:

apply plugin: 'com.android.application'
//Put Fabric plugin after Android plugin
apply plugin: 'io.fabric'

Aggiungi il repository Fabric:

repositories {
  maven { url 'https://maven.fabric.io/public' }
}

Aggiungi il kit Crashlyrics:

dependencies {
  
  compile('com.crashlytics.sdk.android:crashlytics:2.6.6@aar') {
    transitive = true;
  }
}

Passaggio 2: aggiungere la chiave API e l'autorizzazione INTERNET in 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>

Passaggio 3: avviare il kit in fase di esecuzione nel codice utente, ad esempio:

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);
    }
}

Passaggio 4: crea un progetto. Per costruire ed eseguire:

inserisci la descrizione dell'immagine qui


Utilizzando il plug-in IDE Fabric

I kit possono essere installati utilizzando il plug-in Fabric IDE per Android Studio o IntelliJ seguendo questo link.

inserisci la descrizione dell'immagine qui

Dopo aver installato il plug-in, riavvia Android Studio e accedi con il tuo account utilizzando Android Studio .

(tasto CTRL + L > CTRL + L )

inserisci la descrizione dell'immagine qui

Quindi mostrerà i progetti che hai / il progetto che hai aperto, seleziona quello di cui hai bisogno e fai clic su Avanti ... successivo.

Seleziona il kit che vorresti aggiungere, per il suo esempio è Crashlytics :

inserisci la descrizione dell'immagine qui

Quindi premi Install . Non è necessario aggiungerlo manualmente questa volta come sopra il plugin gradle , invece verrà creato per te.

inserisci la descrizione dell'immagine qui

Fatto!

Segnalazione di crash con ACRA

Passaggio 1: aggiungere la dipendenza dell'ultimo ACRA AAR al gradle dell'applicazione (build.gradle).

Passaggio 2: nella classe dell'applicazione (la classe che estende l'applicazione, se non la crea) aggiungere un'annotazione @ReportsCrashes e sovrascrivere il metodo attachBaseContext() .

Passaggio 3: inizializzare la classe ACRA nella classe dell'applicazione

@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);
            }
    }

Dove AUTH_USERNAME e AUTH_PASSWORD sono le credenziali dei tuoi backend desiderati.

Passaggio 4: definire la classe dell'applicazione in AndroidManifest.xml

 <application
        android:name=".MyApplication">
        <service></service>
        <activity></activity>
        <receiver></receiver>
 </application>

Passaggio 5: assicurarsi di disporre dell'autorizzazione internet per ricevere il rapporto dall'applicazione arrestata

<uses-permission android:name="android.permission.INTERNET"/>

Nel caso in cui si desideri inviare il rapporto silenzioso al back-end, utilizzare il seguente metodo per ottenerlo.

ACRA.getErrorReporter().handleSilentException(e);

Forza un crash di prova con tessuto

Aggiungi un pulsante che puoi toccare per attivare un arresto anomalo. Incolla questo codice nel layout in cui desideri che venga visualizzato il pulsante.

<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" />

Lancia una RuntimeException

public void forceCrash(View view) {
    throw new RuntimeException("This is a crash");
}

Esegui la tua app e tocca il nuovo pulsante per causare un arresto anomalo. In un minuto o due dovresti essere in grado di vedere l'incidente sul cruscotto Crashlytics così come riceverai una mail.

Cattura gli arresti anomali con Sherlock

Sherlock cattura tutti i tuoi arresti anomali e li segnala come notifica. Quando si tocca la notifica, si apre un'attività con tutti i dettagli del crash insieme alle informazioni su dispositivo e applicazione

Come integrare Sherlock con la tua applicazione?

Devi solo aggiungere Sherlock come dipendenza gradle nel tuo progetto.

dependencies {
    compile('com.github.ajitsing:sherlock:1.0.1@aar') {
        transitive = true
    }
}

Dopo aver sincronizzato il tuo studio Android, inizializza Sherlock nella tua classe Application.

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);
  }
}

Questo è tutto ciò che devi fare. Anche Sherlock fa molto di più che segnalare un incidente. Per controllare tutte le sue caratteristiche date un'occhiata a questo articolo .

dimostrazione

inserisci la descrizione dell'immagine qui



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow