Gérer les rapports d’erreurs d’une application Android avec Acra

ACRA est une librairie pour les développeurs d’applications Android qui permet l’envoi automatique de rapports de crash lorsque l’application s’arrête brutalement ou ne fonctionnement pas correctement.

1. La philosophie de la libraire

Directement inspiré de ce que propose Alocaly (envoi de rapports d’erreurs par e-mail qui nécessite cependant une confirmation à chaque envoi), ACRA fait beaucoup plus fort. Là où certaines librairies impliquent d’avoir un serveur dédié sur lequel les rapports d’erreurs sont hébergés, ACRA intègre l’envoi/stockage des rapports directement sur une feuille d’un tableur de type Google Spreadsheets.

La librairie est Open Source, sous licence Apache. Elle peut donc être utilisée dans nimporte quelle application (payante ou gratuite).

2. Qui utilise ACRA ?

D’après AppBrain, la célèbre source d’informations sur les applications du Google Play Store, ACRA est utilisé dans 2,76% des applications disponibles sur la plateforme de Google (chiffres à Janvier 2015).

acra_install_google_play

 

Les applications qui implémentent le service proposé par ACRA n’appartiennent pas à une catégorie en particulier. On retrouve aussi bien des applications de productivité comme Adobe Reader que des jeux ou des launchers.

Le récapitulatif complet de l’utilisation de la librairie ACRA : http://goo.gl/w6vQ0K

3. Les avantages

Parmi les nombreux avantages de cette librairie :

  • Hébergement par Google (Google Docs Sheets)
  • Si la connexion internet n’est pas active au moment du crash, le rapport de bug est stocké en local et sera synchronisé ultérieurement
  • Ne nécessite pas la validation de l’envoi par l’utilisateur
  • Simplicité de mise en place

4. L’interaction avec l’utilisateur

Lors de l’arrêt brutal de votre application, vous avez 4 possibilités d’interagir avec l’utilisateur pour l’informer :

  • Silencieux : Les rapports d’erreurs sont envoyés en fond de tâche
  • Toast : Un message est affiché temporairement et les rapports d’erreurs sont envoyés simultanément
  • Notification : Une notification est ajoutée dans la “Status Bar” et le rapport sera envoyé seulement si l’utilisateur accepte l’envoi du rapport (avec un commentaire optionnel).
  • Boite de dialogue: une boite de dialogue contenant les informations du rapport d’erreur.

5. Mise en place

La simplicité de mise en place est un des principal avantage de ACRA. Ci-dessous, la procédure de mise en place de la librairie au sein d’un projet d’application Android (Eclipse) :

  • Télécharger la dernière version de la librairie ACRA : acra-X-X-X.jar (4.5.0 au 06/02/2015)
  • Placer la librairie dans un dossier “libs” à la racine de votre projet
  • Ajouter la librairie au “Build Path” de votre application :
  • Project> Properties > Java Build Path > Add JARs…
  • Création de la classe “MyApplication” qui hérite de android.app.Application.

acra_myapplication

  • Ajouter la classe “MyApplication” à l’élément <application> du fichier MANIFEST (/AndroidManifest.xml) et donner les droits d’accès à internet pour l’application.

acra_manifest_myapplication

  • Donner la permission à l’application de se connecter à Internet

acra_permissions_internet

C’est prêt! 

 

Leave a Reply

Your email address will not be published.