| 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 dSYMs automatisch verarbeiten und die Dateien hochladen kann
Beim Einrichten von Crashlytics in Ihrer App haben Sie ein Ausführungsskript konfiguriert um dSYMs 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. Für Ihr Crashlytics Ausführungsskript
(firebase-ios-sdk/Crashlytics/run) muss die folgende
Einrichtung vorhanden sein:
Klicken Sie auf den Tab Build-Phasen und maximieren Sie dann den Bereich Ausführungsskript.
Prüfen Sie im Bereich Eingabedateien, ob die Pfade zu den Speicherorten der folgenden Dateien vorhanden 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 dSYMs erstellt
In den meisten Fällen fehlen dSYM-Dateien, weil Xcode sie einfach nicht erstellt. Wenn ein Upload fehlschlägt, wird in der Firebase Console eine Warnung „Fehlende dSYM-Datei“ angezeigt.Crashlytics Wenn Sie diese Warnung erhalten, prüfen Sie zuerst, ob Xcode die richtige dSYM-Datei für jeden Build 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 dSYMs und laden Sie sie manuell in Crashlytics hoch.Crashlytics
dSYMs auf einem lokalen Computer suchen
Führen Sie den folgenden Befehl aus, um alle UUIDs Ihrer dSYMs 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 mdfind Befehl keine Ergebnisse zurückgibt, können Sie im
Products Verzeichnis suchen, in dem sich Ihre .app-Datei befindet. Standardmäßig befindet sich das Products
Verzeichnis unter Derived Data. Wenn Ihre App in der Produktion veröffentlicht wurde,
können Sie auch im .xcarchive Verzeichnis auf dem Laufwerk nach der zugehörigen dSYM-Datei suchen:
Öffnen Sie in Xcode das Fenster Organizer und wählen Sie Ihre App in 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 aufzurufen. Klicken Sie noch einmal bei gedrückter Ctrl-Taste darauf und dann auf Paketinhalt zeigen.
In
.xcarchivebefindet sich ein dSYMs-Verzeichnis, das dSYMs enthält, die im Rahmen des Archivierungsprozesses von Xcode generiert wurden.
dSYMs hochladen
Crashlytics unterstützt mehrere Möglichkeiten, Ihre dSYM-Dateien hochzuladen, entweder automatisch oder manuell.
(Empfohlen) dSYMs 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 (gehen Sie zur Firebase Konsole > Crashlytics > dSYMs Tab).
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 dasupload-symbolsSkript auszufü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--helpParameter.