Im Crashlytics-Dashboard sind lesbare Absturzberichte verfügbar.
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
iOS+ (Apple-Plattformen)
Bei Apps für Apple-Plattformen, die das Crashlytics Unity SDK 8.2.0 oder höher verwenden, konfiguriert das Firebase Unity Editor-Plug-in Ihr Xcode-Projekt automatisch für das Hochladen von Symbolen. Laden Sie die aktuelle Version herunter.
Android
Bei Android-Apps ist im Crashlytics Unity SDK 8.6.1+ automatisch die NDK-Absturzmeldung enthalten. Dadurch kann Crashlytics automatisch IL2CPP-Abstürze von Unity unter Android melden. Wenn Sie jedoch symbolisierte Stabeltraces für Abstürze nativer Bibliotheken im Crashlytics-Dashboard sehen möchten, müssen Sie Symbolinformationen zur Build-Zeit mit der Firebase-Befehlszeile hochladen.
(nur für Apps, die Android-API-Level 30 oder höher verwenden) Aktualisieren Sie die AndroidManifest.xml-Vorlage Ihrer App, um das Pointer-Tagging zu deaktivieren:
Klicken Sie das Kästchen für Android Player Settings > Publishing Settings > Build > Custom Main Manifest an.
Öffnen Sie die Manifestvorlage unter Assets/Plugins/Android/AndroidManifest.xml.
(nur für Apps, die eine SDK-Version vor 8.8.0 verwenden) Fügen Sie dem Application-Tag das folgende Attribut hinzu:
<application android:allowNativeHeapPointerTagging="false" ... />
Erstellen Sie Ihr Projekt und laden Sie Symbole hoch.
Führen Sie diese Schritte jedes Mal aus, wenn Sie einen Release-Build oder einen anderen Build erstellen, für den Sie symbolisierte Stacktraces in der Firebase-Konsole sehen möchten.
Führen Sie im Dialogfeld Build Settings einen der folgenden Schritte aus:
Exportieren Sie das Projekt in ein Android Studio-Projekt, um es zu erstellen.
Erstellen Sie Ihr APK direkt im Unity-Editor.
Achten Sie vor dem Erstellen darauf, dass im Dialogfeld Build-Einstellungen das Kästchen für symbols.zip erstellen angeklickt ist.
Nachdem der Build abgeschlossen ist, generieren Sie eine Crashlytics-kompatible Symboldatei und laden Sie sie auf die Firebase-Server hoch, indem Sie den folgenden Firebase-CLI-Befehl ausführen:
FIREBASE_APP_ID: Ihre Firebase-Android-App-ID (nicht Ihr Paketname)
Beispiel für eine Firebase-Android-App-ID: 1:567383003300:android:17104a2ced0c9b9b
Sie müssen Ihre Firebase App-ID finden?
Sie haben zwei Möglichkeiten, Ihre Firebase App-ID zu finden:
In der Datei google-services.json ist die App-ID der Wert mobilesdk_app_id.
Rufen Sie in der Firebase-Konsole die Projekteinstellungen auf.
Scrollen Sie nach unten zur Karte Ihre Apps und klicken Sie dann auf die gewünschte Firebase-App, um die App-ID zu finden.
PATH/TO/SYMBOLS: Der Pfad zur Symboldatei, die von der CLI generiert wurde.
In ein Android Studio-Projekt exportiert: PATH/TO/SYMBOLS ist das Verzeichnis unityLibrary/symbols, das im exportierten Projektstammverzeichnis erstellt wird, nachdem Sie die App über Gradle oder Android Studio erstellt haben.
Die APK wurde direkt in Unity erstellt: PATH/TO/SYMBOLS ist der Pfad der gezippten Symboldatei, die nach Abschluss des Builds im Stammverzeichnis des Projekts generiert wurde (z. B. myproject/myapp-1.0-v100.symbols.zip).
Erweiterte Optionen für die Verwendung des Firebase-CLI-Befehls zum Generieren und Hochladen von Symboldateien ansehen
Flag
Beschreibung
--generator=csym
Verwendet den alten cSYM-Symboldateigenerator anstelle des Standard-Breakpad-Generators.
Nicht zur Verwendung empfohlen. Wir empfehlen, den Standardgenerator für Breakpad-Symboldateien zu verwenden.
--generator=breakpad
Verwendet den Breakpad-Symboldateigenerator
Standardmäßig wird Breakpad für die Generierung von Symboldateien verwendet.
Verwenden Sie dieses Flag nur, wenn Sie symbolGenerator { csym() } in Ihrer Build-Konfiguration hinzugefügt haben und es überschreiben möchten, um stattdessen Breakpad zu verwenden.
--dry-run
Generiert die Symboldateien, lädt sie aber nicht hoch
Dieses Flag ist nützlich, wenn Sie den Inhalt der gesendeten Dateien prüfen möchten.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-03 (UTC)."],[],[],null,["\u003cbr /\u003e\n\niOS+ Android Flutter Unity \n\n\u003cbr /\u003e\n\nBy default, Firebase Crashlytics automatically processes your debug symbol\n(dSYM) files to give you deobfuscated and human-readable crash reports. You\nusually configure this behavior during the initial setup of Crashlytics in\nyour app, specifically by\n[adding a run script](/docs/crashlytics/get-started?platform=ios#set-up-dsym-uploading)\nthat automatically uploads dSYM files during your app's build phase.\n\nUnfortunately, there are a few cases that could cause your automatic dSYM files\nupload to fail. This guide provides some ways to troubleshoot when\nCrashlytics can't locate your app's dSYM files.\n\nMake sure Xcode can automatically process dSYMs and upload the files\n\nWhen setting up Crashlytics in your app, you\n[configured a run script](/docs/crashlytics/get-started?platform=ios#set-up-dsym-uploading)\nto automatically process dSYMs and upload the files.\n\nMake sure that your configuration for the Crashlytics run script is\nup-to-date with the new requirements which started with Xcode 15. If your\nconfiguration isn't up-to-date, you might be getting the following error: \n\n`error: Info.plist Error Unable to process Info.plist at path ...`.\n\nSpecifically, Xcode 15 and later requires that you provide a more complete set\nof file locations. For your Crashlytics run script\n(`firebase-ios-sdk/Crashlytics/run`), make sure that you have the following\nsetup:\n\n1. Click the **Build Phases** tab, and then expand the *Run Script* section.\n\n2. In the *Input Files* section, make sure you have the paths for the locations\n of the following files:\n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}\n ``` \n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}\n ``` \n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist\n ``` \n\n ```\n $(TARGET_BUILD_DIR)/$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/GoogleService-Info.plist\n ``` \n\n ```\n $(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)\n ```\n If you have `ENABLE_USER_SCRIPT_SANDBOXING=YES` and `ENABLE_DEBUG_DYLIB=YES` in your project build settings, then include the following: \n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}.debug.dylib\n ```\n **Understand why the locations of these files are\n needed**\n\n Xcode looks in the specified locations for these input files to ensure\n that the build files are available for the run script. Also, if\n *User Script Sandboxing* is enabled, Xcode only allows the run\n script to access files specified in the *Input Files*.\n - Providing the location of your project's dSYM files enables Crashlytics to process dSYMs.\n - Providing the location of your app's built `GoogleService-Info.plist` file enables Crashlytics to associate the dSYMs with your Firebase app.\n - Providing the location of your app's executable allows the run script to prevent duplicate uploads of the same dSYM. Note that app binaries are *not uploaded*.\n\nCheck if Xcode is producing dSYMs\n\nMore often than not, dSYM files go missing because Xcode simply isn't producing\nthem. When an upload fails, Crashlytics displays a \"Missing dSYM\" alert in\nthe Firebase console. If you get this alert, first check that Xcode is\nproducing the correct dSYM for every build:\n\n1. Open your project in Xcode, and then select the project file in the Xcode\n Navigator.\n\n2. Select your main build target.\n\n3. Open the target's **Build Settings** tab, and then click **All**.\n\n4. Search for `debug information format`.\n\n5. Set **Debug Information Format** to **DWARF with dSYM File** for all\n your build types.\n\n6. Rebuild your app.\n\nYour crash reports should now appear in the\n[Crashlytics dashboard](https://console.firebase.google.com/project/_/crashlytics). If the problem persists or you\nencounter other errors, try [locating your dSYMs](#locate) and\n[uploading them to Crashlytics manually](#upload-dsyms).\n\nLocate your dSYMs on a local machine\n\nRun the following command to display all your dSYMs' UUIDs on your machine and\nsearch for the missing dSYM: \n\n```text\nmdfind -name .dSYM | while read -r line; do dwarfdump -u \"$line\"; done\n```\n\nOnce you find the dSYM, [manually upload it to Crashlytics](#upload-dsyms).\nIf the `mdfind` command doesn't return any results, you can look in the\n`Products` directory where your `.app` lives (by default, the `Products`\ndirectory is located in `Derived Data`). If your app is released to production,\nyou can also look for its dSYM in the `.xcarchive` directory on disk:\n\n1. In Xcode, open the **Organizer** window, and then select your app from the\n list. Xcode displays a list of archives for your project.\n\n2. Control-click an archive to view it in Finder. Control-click it again, and\n then click **Show Package Contents**.\n\n3. Within `.xcarchive` is a dSYMs directory that contains dSYMs generated as\n part of Xcode's archiving process.\n\nUpload your dSYMs\n\nCrashlytics supports multiple ways to upload your dSYMs files, either\n[automatically](#auto-upload-dsyms) or [manually](#manually-upload-dsyms).\n\n*(Recommended)* Automatically process your dSYMs and upload the files\n\nWhen you initially set up Crashlytics, you most likely configured this\nautomatic upload behavior for your app. However, if automatic uploads are\nfailing, [check that your configuration is correct](#check-input-files-setup).\n\nManually upload your dSYM files\n\nIf automatic uploads are failing, you can manually upload your dSYM files using\neither of the following options.\n\n- **Option 1** : Use the console-based \"Drag and Drop\" option to upload a zip\n file containing your dSYM files (go to the\n Firebase console \\\u003e\n [Crashlytics](https://console.firebase.google.com/project/_/crashlytics) \\\u003e\n *dSYMs* tab).\n\n- **Option 2** : Use the `upload-symbols` script that you can call from\n anywhere in your build process to manually upload your dSYM files. To run the\n `upload-symbols` script, use either of the following options:\n\n - **Option A**: Include the following line in your build process:\n\n ```gdscript\n find dSYM_DIRECTORY -name \"*.dSYM\" | xargs -I \\{\\} $PODS_ROOT/FirebaseCrashlytics/upload-symbols -gsp /PATH/TO/GoogleService-Info.plist -p PLATFORM \\{\\}\n ```\n - **Option B**: Run the script directly from your terminal:\n\n ```\n /PATH/TO/PODS/DIRECTORY/FirebaseCrashlytics/upload-symbols -gsp /PATH/TO/GoogleService-Info.plist -p ios /PATH/TO/dSYMs\n ```\n\n For usage notes and additional instructions about this script, run\n `upload-symbols` with the `--help` parameter."]]