Android Crash Reporting

Absturzursachenforschung


Android bietet seit der Version 2.2 die Möglichkeit, beim Absturz einer App einen Bericht an Google zu senden, der zusammen mit verschiedenen Geräteinformationen eine detaillierte Fehlerbeschreibung enthält. Teile dieses Berichts können vom Entwickler der App im Play Store angesehen und zur Fehlersuche und -behebung genutzt werden. Die gesendeten Geräteinformationen werden hier aber nicht zur Verfügung gestellt. Außerdem ist es nicht möglich, den von Android vorgegebenen Dialog bei einem Crash anzupassen. Welche Möglichkeiten hat man als App-Entwickler, um einerseits mehr Informationen über einen Crash zu erhalten und andererseits die Interaktion mit dem Benutzer im Falle eines Crashs selbst bestimmen zu können?

Es gibt wohl nichts, was ein Android-App-Entwickler mehr fürchtet, als die berühmt-berüchtigte Meldung „Tut uns leid! Die Anwendung ... wurde unerwartet beendet. Versuchen Sie es erneut.“ oder auf Englisch: „Sorry! The application ... has stopped unexpectedly. Please try again.“

Seit der Version 2.2 bietet Android neben dem Button Schließen erzwingen (Force Close) einen weiteren Button, um dem Senden eines Berichts an den Play Store zuzustimmen, sofern die App über den Play Store auf dem Gerät installiert wurde. Die Crashs können vom App-Entwickler dann im Developer-Account des Play Store eingesehen werden.

Google legt hier sehr viel Wert auf die Privatsphäre der Nutzer: Vor dem Senden kann der Benutzer entscheiden, ob er Geräte- und Systeminformationen mitsenden möchte. Außerdem kann er optional einen Feedbackkommentar zu dem Problem mitschicken. Leider werden die gesendeten Daten dem App-Entwickler nicht uneingeschränkt zur Verfügung gestellt. Er erhält lediglich den zugehörigen Stacktrace, Informationen und ggf. den Kommentar. Informationen über das Gerät, die verwendete Android-Version, den Mobilfunkanbieter, das Land usw. werden dem App-Entwickler nicht zur Verfügung gestellt, sondern lediglich intern von Google genutzt. Dabei sind gerade diese Informationen häufig wichtig und sinnvoll, um einem Problem, das in der eigenen App existiert, auf die Schliche zu kommen.

Wie kann man als App-Entwickler hier also Abhilfe schaffen? Dazu muss man zunächst wissen, wann eine solche „Force Close“-Situation in Android überhaupt auftritt: Das ist jedes Mal dann der Fall, wenn eine nicht behandelte Exception in der Anwendung auftritt. Die Lösung, um solche Situationen zu vermeiden, ist also, alle Exceptions zu behandeln. Da man sicherlich nicht den gesamte...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang