"Wo findet man Crash-Logs auf mobilen Geräten und wie bekommt man sie? Was ist der einfachste Weg?"
Motivation
Im Falle von Abstürzen in einer mobilen App sind Crash-Logs als Schlüsselkomponente deines Bug-Reports obligatorisch. Sie können auch im Falle eines Stillstands bzw. beim Einfrieren der App nützlich sein. Nur protokollierte Informationen können detaillierte Einblicke in die Umstände des Problems bieten.
In diesem Artikel erfährst du, wie du Crash-Logs für Android- und iOS-Geräte abrufen kannst. Durch Anwendung dieser Techniken kannst du sinnvolle Log-Dateien aufzeichnen und an deine Reports anhängen.
Abrufen von Crash-Logs auf Android-Geräten
Für Android-Geräte gibt es zwei Hauptansätze: die Verwendung der Android Debug Bridge (ADB) und die Verwendung des integrierten Bug-Report-Features in den Entwicklertools auf deinem Telefon. Zuerst erklären wir, wie ADB verwendet wird.
Crash-Logs mit ADB abrufen
Um Crash-Logs über ADB in Windows zu erhalten, musst du SDK Platform Tools herunterladen. Du kannst SDK Platform Tools hier herunterladen.
Für macOS musst du android-platform-tools mit Homebrew installieren. Installationsanweisungen findest du weiter unten in diesem Artikel.
Starten von ADB unter Windows und macOS
Windows
Nach dem Herunterladen von SDK Platform Tools musst du die Dateien (den Ordner) extrahieren. Nachdem du dies getan hast, musst du den extrahierten Ordner öffnen. Klicke nach dem Öffnen dieses Ordners auf eine freie Stelle in der Adressleiste des Datei-Explorers, gib hier "cmd" ein und drücke ENTER auf deiner Tastatur. Dadurch wird das cmd (Command Prompt) in diesem Ordner gestartet und somit im Grunde auch ADB.
macOS
Zuerst musst du Homebrew über das Terminal installieren und anschließend android-platform-tools. Um Homebrew auf deinem macOS zu installieren, öffne bitte die Homebrew-Website und kopiere den Installationslink unter dem Abschnitt "Homebrew installieren". Füge den Link dann in das Terminal ein und drücke ENTER auf deiner Tastatur. Die Homebrew-Installation beginnt. Befolge die Installationsanweisungen bis zum Ende.
Hinweis: In einigen Fällen kann die Installation etwas länger dauern, da zusätzliche Komponenten installiert werden.
Nachdem Homebrew mit der Installation fertig ist, musst du android-platform-tools installieren. Besuche die Website "android-platform-tools Homebrew Formulae" und kopiere den Installationsbefehl. Füge diesen Befehl dann in das Terminal ein und drücke ENTER auf deiner Tastatur. Die Installation wird dann gestartet. Gib nach Abschluss der Installation "adb" ins Terminal ein und drücke ENTER. Wenn du adb-Befehle siehst, bedeutet dies, dass die Installation erfolgreich durchgeführt wurde.
Hinweis: Nach der Installation von android-platform-tools musst du nur noch das Terminal öffnen und die Befehle zur Log-Aufzeichnung ausführen, wie sie weiter unten in diesem Artikel beschrieben sind.
Erstellung von Logs
Um Logs zu erstellen, musst du die USB-Debugging-Funktion in den Entwickleroptionen auf deinem Telefon aktivieren und die Befehle im zuvor geöffneten cmd (Windows) oder Terminal (macOS) ausführen. Wenn du bereits die Entwicklertools und das USB-Debugging aktiviert hast, kannst du zu Teil 2 übergehen.
Teil 1: Aktivierung des USB-Debuggings auf deinem Android-Gerät
Öffne die Einstellungs-App.
Suche die Build-Nummer (normalerweise unter "Softwareinformationen" im Abschnitt "Über das Telefon").
Tippe wiederholt auf die Build-Nummer, bis du die Meldung "Sie sind jetzt ein Entwickler!" siehst.
Du kannst die Entwickleroptionen jetzt in den Einstellungen finden, öffne sie bitte.
Wenn die Entwickleroptionen noch nicht aktiviert sind, aktiviere sie, indem du auf den Toggle-Button tippst.
Suche die Option "USB-Debugging" und aktiviere sie, indem du auf den entsprechenden Toggle-Button tippst.
Teil 2: Erstellung von Logs
1. Gib im zuvor geöffneten cmd (Windows) oder Terminal (macOS) "adb start-server" ein und drücke ENTER auf deiner Tastatur. Dadurch wird der ADB-Server gestartet.
2. Schließe dein Telefon jetzt über ein USB-Kabel an deinen PC an. Wenn du USB-Debugging zuvor nicht auf deinem Android-Telefon verwendet hast, solltest du eine Aufforderung "USB-Debugging zulassen?" sehen. Tippe auf OK. Du kannst auch "Immer von diesem Computer zulassen" auswählen und auf OK tippen, um sicherzustellen, dass du nicht immer wieder danach gefragt wirst, wenn du Crash-Logs abrufen möchtest.
3. Gib nun im cmd oder Terminal "adb devices" ein und drücke ENTER. Dadurch werden die mit deinem PC verbundenen Geräte aufgelistet. Vergewissere dich, dass dein Gerät in der Liste angezeigt wird.
Hinweis: Wenn du nach dem Namen deines Geräts den Text "unauthorized" siehst, bedeutet dies wahrscheinlich, dass du das USB-Debugging nicht zugelassen hast. Stelle sicher, dass direkt nach dem Namen deines Geräts der Text "device" steht.
4. Um eine Log-Datei für die reproduzierbaren Probleme zu erstellen, lösche zuerst die Log-Historie, um unnötige Inhalte zu entfernen, indem du "adb logcat -c" eingibst und mit ENTER bestätigst.
5. Jetzt ist es an der Zeit, die Logs zu erfassen.
5a. Wenn du eine Log-Datei im aktuellen Ordner erstellen möchtest (wo sich die Plattformtools unter Windows befinden), kannst du "adb logcat -v time > crashlog.txt" eingeben und ENTER auf der Tastatur drücken, wodurch der Log-Prozess gestartet wird.
5b. Wenn du eine Log-Datei in einem anderen Ordner erstellen möchtest, musst du den Dateipfad dieses Ordners kopieren (unter Windows: Zum Zielordner navigieren --> Auf freien Platz in der Adressleiste des Datei-Explorers klicken --> Dateipfad kopieren; auf macOS: Ordner auswählen --> Mit der rechten Maustaste darauf klicken --> Kopieren). Nachdem du den Dateipfad kopiert hast, gib im cmd oder Terminal "adb logcat -v time > paste_file_path_here\log.txt" ein und drücke ENTER auf der Tastatur (Der Befehl unter Windows sollte so aussehen: "adb logcat -v time > D:\testIO\Logs\crashlog.txt"; auf dem Mac sollte er so aussehen: "adb logcat -v time > /Users/testIO/log/crashlog.txt"). Der Log-Prozess startet nach dem Drücken von ENTER.
6. Jetzt, da du mit dem Logging begonnen hast, reproduziere den Bug oder Absturz, für den du eine Log-Datei erstellen möchtest. Sobald du fertig bist, drücke im cmd oder Terminal CTRL+ C. Dadurch wird der Log-Prozess gestoppt und du solltest deine Log-Datei jetzt im angegebenen Ordner sehen.
Videoerklärung: 5a. - Erstellen eines Logs im aktuellen Ordner, in dem sich die Plattformtools befinden (Windows)
Videoerklärung: 5b. - Erstellen eines Logs in einem anderen Ordner (Windows)
Videoerklärung: 5b. - Erstellen eines Logs in einem anderen Ordner (Mac)
Bug-Report-Feature
Eine andere Möglichkeit, Logs von deinem Android-Telefon abzurufen, besteht darin, die Android-Bug-Report-Funktion direkt in den Entwickleroptionen auf deinem Gerät zu verwenden. Du kannst Bug-Reports jederzeit erstellen, die alle Log-Aktivitäten innerhalb eines bestimmten Zeitrahmens enthalten, abhängig von der Größe deines Log-Puffers und der Log-Aktivität auf deinem Gerät. Dieser Zeitrahmen kann von wenigen Minuten bis zu mehreren Stunden oder sogar Tagen reichen.
Erstellen eines Bug-Reports über die Entwickleroptionen
Öffne die Einstellungs-App.
Suche die Build-Nummer (normalerweise unter "Softwareinformationen" im Abschnitt "Über das Telefon").
Tippe wiederholt auf die Build-Nummer, bis du die Meldung "Sie sind jetzt ein Entwickler!" siehst.
Du kannst die Entwickleroptionen jetzt in den Einstellungen finden, öffne sie bitte.
Wenn die Entwickleroptionen noch nicht aktiviert sind, aktiviere sie, indem du auf den Toggle-Button tippst.
Tippe auf "Bug-Report senden" oder "Bug-Report erstellen" (der Name dieser Funktion hängt von deinem Gerät ab), wähle "Interaktiver Report" aus und drücke den Button "Report senden".
Dein Bericht wird jetzt erstellt. Du kannst den Fortschritt der Erstellung im Benachrichtigungszentrum verfolgen. Sobald der Bug-Report fertig ist, teile den Bericht, indem du ihn per E-Mail an dich selbst sendest oder ihn an ein Ziel deiner Wahl wie Google Drive oder Dropbox hochlädst.
Öffne die Textdatei des Berichts auf deinem Computer (entpacke sie ggf. zuerst).
Suche den Abschnitt SYSTEM LOG im Bericht und füge ihn deinem Bug-Report hinzu.
Hinweis: Wenn dein Crash-Log mehr als 25 MB groß ist, extrahiere bitte den relevanten Teil einschließlich einiger Teile vor und nach dem Fehlerereignis und hänge den Crash-Log an deinen Bug-Report an.
Abrufen von Crash-Logs auf iOS-Geräten
Das Abrufen von Logdateien auf iOS-Geräten erfordert nicht viel Aufwand. Je nach Computer, den du verwendest (Windows oder Mac), zeigen wir dir im folgenden Text, wie du den Log schnell extrahieren und deinem Bug-Report anhängen kannst.
Wenn auf deinem iOS-Gerät ein Absturz auftritt, wird in den meisten Fällen automatisch eine .ips-Datei erstellt und zu den Analyse-Daten hinzugefügt. Diese .ips-Datei musst du deinem Bug-Report beifügen, wenn du einen Bug im Zusammenhang mit einem Absturz auf einem iOS-Gerät meldest. Du kannst Crash-Logs auf deinem iOS-Gerät finden, indem du die nächsten Schritte befolgst:
Öffne die Einstellungen auf deinem iOS-Gerät.
Suche und öffne Datenschutz und Sicherheit.
Öffne Analytics & Verbesserungen.
Gehe zu Analytics-Daten.
Nachdem du Analytics-Daten geöffnet hast, findest du alle Protokolle, die auf deinem iOS-Gerät erstellt wurden. Jetzt zeigen wir dir, wie du sie schnell extrahieren kannst, abhängig von deinem Computer (Windows oder Mac).
Windows
Verwenden von 3uTools. Mit 3uTools kannst du Logs schnell finden und auf deinem Windows-PC extrahieren. Das einzige, was du benötigst, ist ein USB-Kabel. Gehe folgendermaßen vor:
Lade 3uTools herunter. Du kannst 3uTools hier herunterladen.
Installiere 3uTools und öffne es nach Abschluss der Installation.
Schließe dein iOS-Gerät über ein USB-Kabel an deinen PC an.
3a. Wenn auf deinem Gerät die Meldung "Diesem Computer vertrauen?" angezeigt wird, tippe auf "Vertrauen" und gib gegebenenfalls dein Gerätekennwort ein.
Stelle sicher, dass dein Gerät in 3uTools angezeigt wird.
Klicke auf "Toolbox" im Navigationsmenü.
Öffne "Crash-Analyse" und klicke dann auf "Dateien".
Finde die entsprechende Log-Datei und exportiere sie an das gewünschte Ziel.
Füge die exportierte Log-Datei zum deinem Bug-Report hinzu.
macOS
Das Extrahieren von Log-Dateien auf macOS von einem iOS-Gerät ist noch einfacher als unter Windows. Der schnellste Weg, Logs von deinem iOS-Gerät auf deinen Mac zu extrahieren, besteht darin, die AirDrop-Funktion zu verwenden. Gehe folgendermaßen vor:
Öffne in den zuvor geöffneten Analytics Data die entsprechende Log-Datei.
Tippe auf den Button "Teilen" oben rechts auf dem Bildschirm.
Tippe auf "AirDrop".
Sende die Log-Datei an dein Mac-Gerät.
Füge die Log-Datei deinem Bug-Report hinzu.
Wenn du Schwierigkeiten hast, Log-Dateien von deinem iOS-Gerät auf deinem Windows- oder Mac-Computer mit den zuvor angegebenen Schritten zu extrahieren, gibt es auch eine einfache Lösung. Du musst nur die entsprechende Log-Datei in Analytics Data öffnen, auf den Button "Teilen" tippen, die Mail-App auswählen und das Protokoll an dich selbst senden. Gehe dann auf deinem Windows- oder Mac-Computer zu deiner Mail, lade die Log-Datei herunter und füge sie deinem Bug-Report hinzu. Natürlich kannst du, wenn du eigene Methoden zum Extrahieren von Protokollen hast, diese auch verwenden.
Hinweis: Manchmal treten möglicherweise "crash"-Probleme auf, aber du kannst keinen Crash-Log finden. In diesem Fall musst du den Konsolen-Log an deinen Bug-Report anhängen. Du kannst unter diesem Link nachsehen, wie du einen Konsolen-Log auf deinem iOS-Gerät erstellen kannst.