Steht für „Application Not Responding“. ANR ist eine Abkürzung, die eine nicht reagierende Android-App beschreibt. Wenn eine App auf einem Android-Gerät ausgeführt wird und nicht mehr reagiert, wird ein „ANR“-Ereignis ausgelöst. Zwei Bedingungen können einen ANR-Fehler auf einem Android-Gerät verursachen:
- Eine aktive App reagiert nicht innerhalb von 5 Sekunden auf ein Eingabeereignis.
- Die BroadcastReceiver-Klasse beendet die Ausführung nach einer langen Zeit nicht.
Wenn ein ANR-Fehler auf Ihrem Android-Gerät auftritt, wird ein Dialogfeld auf dem Bildschirm angezeigt. Die Meldung informiert Sie darüber, dass die Anwendung nicht reagiert, und fragt Sie, ob Sie die Anwendung schließen möchten. Sie haben zwei Möglichkeiten: Warten oder OK. Wenn Sie „Warten“ wählen, können Sie weiter warten, wenn Sie der Anwendung mehr Zeit geben möchten. Wenn Sie „OK“ wählen, wird die Anwendung geschlossen und Sie verlieren möglicherweise nicht gespeicherte Aktivitäten.
ANR-Fehler können aus vielen verschiedenen Gründen auftreten. Einige sind entwicklungsbedingt, z. B. eine schlecht geschriebene Funktion, die mehr Schleifen als nötig durchläuft. Andere sind gerätebedingt, d. h. die Hardware kann mit den Anforderungen der Anwendung nicht Schritt halten. Wenn eine Anwendung beispielsweise ein großes Dokument rendert, kann es mehrere Sekunden dauern, bis die Daten geladen sind und das Bild auf dem Bildschirm angezeigt wird. Dies kann zu einer ANR-Meldung führen, auch wenn der Prozess einige Sekunden später abgeschlossen ist.
Entwickler
Da ANRs ein schlechtes Benutzererlebnis schaffen, versuchen Entwickler, sie zu vermeiden oder zumindest die Anzahl der Vorkommnisse so weit wie möglich zu reduzieren. Das Android-Betriebssystem zeichnet ANRs und die entsprechenden Aktivitäten auf, um Entwicklern bei der Fehlersuche in ihren Apps zu helfen. Wenn eine App über Google Play verbreitet wird, werden die ANR-Daten automatisch an Google gesendet. Entwickler können die ANR-Daten im Abschnitt „Android Vitals“ der Entwicklerkonsole einsehen.
Hinweis: Mit den ANR-Daten werden keine persönlichen Daten übertragen. Es werden nur die App-Version, die Android-Version, der Gerätetyp und Aktivitätsdaten (wie der aktuelle Prozess) aufgezeichnet.
Aktualisiert: September 11, 2018