Im Crashlytics-Dashboard sind lesbare Absturzberichte verfügbar.


Standardmäßig verarbeitet Firebase Crashlytics automatisch Ihre dSYM-Dateien, um Ihnen deobfuscierte, für Menschen lesbare Absturzberichte zur Verfügung zu stellen. Sie konfigurieren dieses Verhalten in der Regel bei der Ersteinrichtung von Crashlytics in Ihrer App. Dazu fügen Sie ein Ausführungsskript hinzu, das während der Buildphase Ihrer App automatisch DSYM-Dateien 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 die dSYM-Dateien Ihrer App nicht finden kann.

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

Bei der Einrichtung von Crashlytics in Ihrer App haben Sie ein Ausführungsskript konfiguriert, um DSYMs automatisch zu verarbeiten und die Dateien hochzuladen.

Die Konfiguration für das Ausführungsskript Crashlytics muss folgende Voraussetzungen erfüllen: hinsichtlich der neuen Anforderungen, die mit Xcode 15 begannen, auf dem neuesten Stand. Wenn Ihre Konfiguration 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), achten Sie darauf, dass Sie Folgendes haben: 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

Häufig gehen dSYM-Dateien verloren, weil Xcode einfach nicht . Wenn ein Upload fehlschlägt, wird in der Firebase-Konsole von Crashlytics die Warnung „Fehlende dSYM-Datei“ angezeigt. Wenn Sie diese Benachrichtigung erhalten, prüfen Sie zuerst, ob Xcode Erstellen der richtigen dSYM-Datei für jeden Build:

  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 die UUIDs aller DSYMs auf Ihrem Computer anzuzeigen und nach dem fehlenden DSYM zu suchen:

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. In Xcode wird eine Liste der Archive für Ihr Projekt angezeigt.

  2. Klicken Sie mit der gedrückten Maustaste auf ein Archiv, um es im Finder aufzurufen. Klicken Sie erneut bei gedrückter Strg-Taste darauf und und klicken Sie dann auf Paketinhalt anzeigen.

  3. In .xcarchive befindet sich ein dSYMs-Verzeichnis, das die 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 die Dateien hochladen

Bei der Ersteinrichtung von Crashlytics haben Sie dies höchstwahrscheinlich konfiguriert für das automatische Uploadverhalten Ihrer App. Wenn automatische Uploads jedoch schlägt er fehl, 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.