Kategorien
Android Mobil

Android automatische Error Reports von Usern mit ACRA

Ein praktische Bibliothek für Android Apps ist Acra (Application Crash Report for Android), damit lassen sich automatisch bei einem Fehler auf dem Handy eines Users die Fehlermeldung verschicken als:

  • Google Docs spreadsheet (default)
  • Email
  • eigenes HTTP POST Server Script
  • jede andere mögliche Verarbeitung mittels der Implementierung eines eigenen „report senders“

Im Falle eines Crahs kann man dem User auf folgende Arten mit dem Fehler begegnen:

  • Silent (default): ACRA actions are not visible. The crash report is sent and then the default android crash system does its job (Force Close dialog)
  • Toast: When the crash occurs, ACRA displays a toast and simultaneously sends the report.
  • Notification: An optional toast is displayed on application crash, but the report is not sent immediately. A status bar notification is published warning the user that he should send a report. When selected, the notification displays a dialog asking for the authorization to send the report, with an optional user comment.
  • Dialog: since 4.3.0b1, experimental, allows to display a crash dialog without the need of a status bar notification.

Installation

offizielle Anleitung: hier

1. Als erstes muss die Bibliotkek gedownloaded werden.

2. Danch muss die Google Docs Excel Template aus dem Ordner hochgeladen werden: Achtung: es müssen folgende Optionen aktiviert werden beim Upload:

  • Convert documents, presentations, spreadsheets, and drawings to the corresponding Google Docs format
  • Convert text from PDF and image files to Google documents

Testen, ob es funktioniert

Einfach in den bestehen Code folgendes einbauen:

throw new EmptyStackException();

Danach sollte in dem Google Docs Spreadsheet ein Eintrag enthalten sein.

Error Handling

1. Bei einer Fehlermeldung wie:

java.lang.NoClassDefFoundError: org.acra.ACRA

Muss gecheckt werden, ob die Bibliothek im Ordner „libs“ liegt und nicht in einem anderen Ordner.

 

2. Ein anderer Fehler bei mir war:

An internal error occurred during: "Building workspace".
GC overhead limit exceeded

Fix: siehe hier.

3. Rechte des Google Docs Spreadsheets ändern

Auf share klicken und aktivieren: Allow anyone to edit (no sign-in required) und Anyone who has the link can edit.