Im Crashlytics-Dashboard sind lesbare Absturzberichte verfügbar.


Standardmäßig verarbeitet Firebase Crashlytics das Debugging-Symbol automatisch (dSYM-Dateien), um offengelegte und für Menschen lesbare Absturzberichte zu erstellen. Ich konfigurieren Sie dieses Verhalten in der Regel bei der Ersteinrichtung von Crashlytics in Ihre App, insbesondere durch Ausführungsskript hinzufügen das dSYM-Dateien während der Build-Phase Ihrer App automatisch hochlädt.

Leider gibt es einige Fälle, in denen automatische dSYM-Dateien verursacht werden können. der Upload fehlschlägt. In diesem Leitfaden finden Sie einige Möglichkeiten zur Fehlerbehebung, wenn Crashlytics kann die dSYM-Dateien deiner App nicht finden.

Achten Sie darauf, dass Xcode dSYMs automatisch verarbeiten und die Dateien hochladen kann

Beim Einrichten von Crashlytics in deiner App ein Ausführungsskript konfiguriert um dSYMs automatisch zu verarbeiten und die Dateien hochzuladen.

Achten Sie darauf, dass Ihre Konfiguration für das Crashlytics-Ausführungsskript den neuen Anforderungen entspricht, die mit Xcode 15 eingeführt wurden. Wenn Ihr nicht auf dem neuesten Stand ist, wird möglicherweise der folgende Fehler angezeigt:
error: Info.plist Error Unable to process Info.plist at path ....

Insbesondere bei Xcode 15 und höher müssen Sie einen umfassenderen Satz angeben. von Dateispeicherorten. Für das Crashlytics-Ausführungsskript (firebase-ios-sdk/Crashlytics/run) benötigen, benötigen Sie Folgendes: Einrichtung:

  1. Klicken Sie auf den Tab Build-Phasen und maximieren Sie dann den Bereich Skript ausführen.

  2. Achten Sie darauf, dass Sie im Abschnitt Eingabedateien die Pfade für die Speicherorte gespeichert haben. der folgenden Dateien:

    ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}
    ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}
    ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist
    $(TARGET_BUILD_DIR)/$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/GoogleService-Info.plist
    $(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)

Prüfen, ob Xcode dSYMs produziert

In den meisten Fällen fehlen dSYM-Dateien, weil sie in Xcode einfach nicht erstellt werden. Wenn ein Upload fehlschlägt, zeigt Crashlytics die Meldung „Fehlende dSYM-Datei“ an Benachrichtigung in der Firebase-Konsole. Wenn Sie diese Benachrichtigung erhalten, prüfen Sie zuerst, ob Xcode für jeden Build die richtige dSYM-Datei generiert:

  1. Öffnen Sie Ihr Projekt in Xcode und wählen Sie die Projektdatei in der Xcode- Navigator.

  2. Wählen Sie das Hauptziel für die Erstellung aus.

  3. Öffnen Sie den Tab Build Settings (Build-Einstellungen) des Ziels und klicken Sie dann auf All (Alle).

  4. Suchen Sie nach debug information format.

  5. Legen Sie das Format der Fehlerbehebungsinformationen für alle auf DWARF mit dSYM-Datei fest. Ihre Build-Typen.

  6. Erstellen Sie Ihre App neu.

Ihre Absturzberichte sollten jetzt im Crashlytics-Dashboard. Wenn das Problem weiterhin besteht oder andere Fehler auftreten, versuchen Sie, die dSYM-Dateien zu finden und werden sie manuell auf Crashlytics hochgeladen.

dSYMs auf einem lokalen Computer finden

Führen Sie den folgenden Befehl aus, um alle Ihre dSYMs anzuzeigen: UUIDs auf Ihrem Computer und suchen Sie nach der fehlenden dSYM-Datei:

mdfind -name .dSYM | while read -r line; do dwarfdump -u "$line"; done

Wenn Sie die dSYM-Datei gefunden haben, laden Sie sie manuell in Crashlytics hoch. Wenn der Befehl mdfind keine Ergebnisse zurückgibt, können Sie in der Products-Verzeichnis, in dem sich Ihre .app befindet (standardmäßig die Products befindet sich in Derived Data). Wenn die Produktionsversion Ihrer App Sie können die dSYM-Datei auch im Verzeichnis .xcarchive auf dem Laufwerk suchen:

  1. Öffnen Sie in Xcode das Fenster Organizer und wählen Sie Ihre App aus dem Liste. Xcode zeigt eine Liste der Archive für Ihr Projekt an.

  2. Klicken Sie bei gedrückter Strg-Taste auf ein Archiv, um es im Finder anzuzeigen. Klicken Sie noch einmal mit der rechten Maustaste darauf und dann auf Paketinhalt anzeigen.

  3. In .xcarchive befindet sich ein dSYMs-Verzeichnis, das dSYMs enthält, die generiert wurden als Teil des Xcode-Archivierungsprozesses ist.

dSYM-Dateien hochladen

Crashlytics unterstützt mehrere Möglichkeiten zum Hochladen Ihrer dSYMs-Dateien, entweder automatisch oder manuell.

(Empfohlen) dSYMs automatisch verarbeiten und Dateien hochladen

Bei der Ersteinrichtung von Crashlytics haben Sie dies höchstwahrscheinlich konfiguriert für das automatische Uploadverhalten Ihrer App. Wenn automatische Uploads jedoch wenn dies fehlschlägt, prüfen Sie, ob Ihre Konfiguration korrekt ist.

dSYM-Dateien manuell hochladen

Wenn automatische Uploads fehlschlagen, können Sie Ihre dSYM-Dateien manuell mit einer der folgenden Optionen.

  • Option 1: Das konsolenbasierte Drag-and-drop-Verfahren verwenden Option zum Hochladen einer ZIP-Datei mit Ihren dSYM-Dateien (Rufen Sie die Firebase Console > Crashlytics > dSYMs).

  • Option 2: Das Skript upload-symbols verwenden, über das der Aufruf erfolgen kann an einer beliebigen Stelle im Build-Prozess, um die dSYM-Dateien manuell hochzuladen. Um den upload-symbols, verwenden Sie eine der folgenden Optionen:

    • Option A: Fügen Sie die folgende Zeile in Ihren Build-Prozess ein:

      find dSYM_DIRECTORY -name "*.dSYM" | xargs -I \{\} $PODS_ROOT/FirebaseCrashlytics/upload-symbols -gsp /PATH/TO/GoogleService-Info.plist -p PLATFORM \{\}
    • Option B: Führen Sie das Skript direkt auf Ihrem Terminal aus:

      /PATH/TO/PODS/DIRECTORY/FirebaseCrashlytics/upload-symbols -gsp /PATH/TO/GoogleService-Info.plist -p ios /PATH/TO/dSYMs

    Hinweise zur Verwendung und weitere Anleitungen zu diesem Script finden Sie, wenn Sie upload-symbols mit dem Parameter --help ausführen.