| Plattform auswählen : | iOS+ Android Flutter Unity |
Standardmäßig verarbeitet Firebase Crashlytics automatisch Ihre Debug Symbol (dSYM)-Dateien, um offengelegte und für Menschen lesbare Absturzberichte für Sie bereitzustellen. Normalerweise konfigurieren Sie dieses Verhalten bei der ersten Einrichtung von Crashlytics in Ihrer App, insbesondere durch Hinzufügen eines Ausführungsskripts , das dSYM-Dateien während der Build-Phase Ihrer App automatisch hochlädt.
Leider gibt es einige Fälle, die dazu führen können, dass der automatische Upload Ihrer dSYM-Dateien fehlschlägt. In dieser Anleitung finden Sie einige Möglichkeiten zur Fehlerbehebung, wenn Crashlytics die dSYM-Dateien Ihrer App nicht finden kann.
Prüfen, ob Xcode dSYM-Dateien automatisch verarbeiten und die Dateien hochladen kann
Beim Einrichten von Crashlytics in Ihrer App haben Sie ein Ausführungsskript konfiguriert um dSYM-Dateien automatisch zu verarbeiten und die Dateien hochzuladen.
Prüfen Sie, ob Ihre Konfiguration für das Crashlytics Ausführungsskript den neuen Anforderungen entspricht, die mit Xcode 15 eingeführt wurden. 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 in Xcode 15 und höher müssen Sie eine vollständigere Reihe von Dateispeicherorten angeben. Achten Sie bei Ihrem Crashlytics Ausführungsskript
(firebase-ios-sdk/Crashlytics/run) auf die folgende
Einrichtung:
Klicken Sie auf den Tab Build-Phasen und maximieren Sie dann den Bereich Ausführungsskript.
Achten Sie im Bereich Eingabedateien darauf, dass die Pfade zu den Speicherorten der folgenden Dateien angegeben sind:
${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
Wenn Sie in den Build-Einstellungen Ihres Projekts$(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)
ENABLE_USER_SCRIPT_SANDBOXING=YESundENABLE_DEBUG_DYLIB=YESfestgelegt haben, geben Sie Folgendes an:${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}.debug.dylib
Prüfen, ob Xcode dSYM-Dateien erstellt
In den meisten Fällen fehlen dSYM-Dateien, weil Xcode sie einfach nicht erstellt. Wenn ein Upload fehlschlägt, zeigt Crashlytics in der Firebase Konsole eine Warnung „Fehlende dSYM-Datei“ an. Wenn Sie diese Warnung erhalten, prüfen Sie zuerst, ob Xcode für jeden Build die richtige dSYM-Datei erstellt:
Öffnen Sie Ihr Projekt in Xcode und wählen Sie dann die Projektdatei im Xcode-Navigator aus.
Wählen Sie Ihr Haupt-Build-Ziel aus.
Öffnen Sie den Tab Build-Einstellungen des Ziels und klicken Sie dann auf Alle.
Suchen Sie nach
debug information format.Legen Sie für alle Ihre Build-Typen Debug Information Format auf DWARF with dSYM File fest.
Erstellen Sie Ihre App noch einmal.
Ihre Absturzberichte sollten jetzt im Crashlytics Dashboard angezeigt werden. Wenn das Problem weiterhin besteht oder andere Fehler auftreten, suchen Sie Ihre dSYM-Dateien und laden Sie sie manuell in Crashlytics hoch.Crashlytics
dSYM-Dateien auf einem lokalen Computer suchen
Führen Sie den folgenden Befehl aus, um alle UUIDs Ihrer dSYM-Dateien auf Ihrem Computer anzuzeigen und nach der fehlenden dSYM-Datei zu suchen:
mdfind -name .dSYM | while read -r line; do dwarfdump -u "$line"; done
Sobald Sie die dSYM-Datei gefunden haben, laden Sie sie manuell in Crashlytics hoch.
Wenn der Befehl mdfind keine Ergebnisse zurückgibt, können Sie im Verzeichnis Products suchen, in dem sich Ihre .app-Datei befindet. Standardmäßig befindet sich das Verzeichnis Products in Derived Data. Wenn Ihre App in der Produktion veröffentlicht wurde, können Sie auch im Verzeichnis .xcarchive auf dem Laufwerk nach der zugehörigen dSYM-Datei suchen:
Öffnen Sie in Xcode das Fenster Organizer und wählen Sie dann Ihre App aus der Liste aus. Xcode zeigt eine Liste der Archive für Ihr Projekt an.
Klicken Sie bei gedrückter Ctrl-Taste auf ein Archiv, um es im Finder zu öffnen. Klicken Sie noch einmal bei gedrückter Ctrl-Taste darauf und dann auf Paketinhalt zeigen.
In
.xcarchivebefindet sich ein dSYMs-Verzeichnis, das dSYM-Dateien enthält, die im Rahmen des Archivierungsprozesses von Xcode generiert wurden.
dSYM-Dateien hochladen
Crashlytics unterstützt mehrere Möglichkeiten, Ihre dSYM-Dateien hochzuladen, entweder automatisch oder manuell.
(Empfohlen) dSYM-Dateien automatisch verarbeiten und die Dateien hochladen
Bei der ersten Einrichtung von Crashlytics haben Sie dieses automatische Uploadverhalten wahrscheinlich für Ihre App konfiguriert. Wenn automatische Uploads jedoch fehlschlagen, prüfen Sie, ob Ihre Konfiguration korrekt ist.
dSYM-Dateien manuell hochladen
Wenn automatische Uploads fehlschlagen, können Sie Ihre dSYM-Dateien mit einer der folgenden Optionen manuell hochladen.
Option 1: Verwenden Sie die konsolenbasierte Option „Drag-and-drop“, um eine ZIP- Datei mit Ihren dSYM-Dateien hochzuladen (rufen Sie die Firebase Konsole > Crashlytics > dSYM-Dateien auf).
Option 2: Verwenden Sie das
upload-symbolsSkript, das Sie von überall in Ihrem Build-Prozess aufrufen können, um Ihre dSYM-Dateien manuell hochzuladen. Verwenden Sie eine der folgenden Optionen, um das Skriptupload-symbolsauszuführen:Option A: Fügen Sie Ihrem Build-Prozess die folgende Zeile hinzu:
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
Nutzungshinweise und weitere Anleitungen zu diesem Skript finden Sie unter
upload-symbolsmit dem Parameter--help.