2015-07-29 2 views
2

J'ai beaucoup cherché sur ACRA. Depuis après le code transféré de code.google.com à Github. Toutes les réponses dans SO ont un mauvais lien. Tous les exemples de code ne sont pas si utiles que google docs a été déprécié pour l'utiliser.Pas un bon exemple pour la dernière ACRA (Application Crash Report pour Android)

Alors s'il vous plaît me guider comment le nouveau système woks et comment l'utiliser.

+2

Qu'est-ce que vous essayez exactement à faire avec ACRA? La documentation de Github est assez complète. https://github.com/ACRA/acra/wiki –

+0

Stockez la trace de la pile de plantage de l'application quelque part sur le Web pour corriger le problème. Mais je ne sais pas où et comment? –

+1

Si vous cherchez quelque chose pour vous aider à suivre les rapports d'accident, je peux recommander Crashlytics. C'est très utile et facile à utiliser. Vous devez vous inscrire sur leur site et installer un plugin pour le studio Android. Je ne peux pas imaginer créer un projet maintenant sans ça. – Eoin

Répondre

4

D'abord, ajouter ACRA à votre projet:

Maven

<dependency> 
    <groupId>ch.acra</groupId> 
    <artifactId>acra</artifactId> 
    <version>4.9.2</version> 
    <type>aar</type> 
</dependency> 

Gradle

compile 'ch.acra:acra:4.9.2' 

Si la compilation échoue, ajoutez un commentaire. Aucun téléchargement pour moi lors de l'utilisation d'acra avec gradle, donc si la compilation échoue revenir à moi.

Maintenant, vous avez besoin d'une classe Java qui étend l'application. Ceci est également défini dans le manifeste, donc aucune initialisation de la classe n'est nécessaire!

@ReportsCrashes(
    formUri = "http://www.backendofyourchoice.com/reportpath" 
) 
public class MyApplication extends Application { 
    @Override 
    protected void attachBaseContext(Context base) { 
     super.attachBaseContext(base); 

     // The following line triggers the initialization of ACRA 
     ACRA.init(this); 
    } 
} 

Dans votre manifeste:

<application android:icon="@drawable/icon" android:label="@string/app_name" 
      IMPORTANT! ---> android:name="MyApplication" > 

Vous avez besoin de ces autorisations: (lire les journaux n'est pas nessesary si vous n'avez pas besoin de lire le logcat)

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

C'est tout ce que vous besoin de Java-étau. De là, il se divise en deux. Si votre site prend en charge CouchDB:

Acralyzer Installation: https://github.com/ACRA/acralyzer

Si votre serveur n'a pas CouchDB, essayez ces: https://github.com/ACRA/acra/wiki/Backends

+0

En ce qui concerne les backends, si vous ne pouvez pas utiliser CouchDB, je recommande le court par Kevin Gaudin. Personnellement, je travaille sur le code pour convertir les fichiers texte créés par lui et prendre le contenu dans une base de données SQL – Zoe

+1

Pour mon application, j'utilise le plan libre de Tracepot.com comme backend ACRA. Il a une légende de 1000 rapports mensuels, mais je n'ai pas tous ces rapports. – Vektor88

+0

Le backend est vraiment à vous. Mes suggestions ci-dessus étaient si vous utilisiez votre propre site et pas quelque chose comme ça. Vous devez toujours modifier le lien vers le site de soumission sur Tracepot.com pour pouvoir recevoir les rapports. – Zoe