Lesbare Absturzberichte im Crashlytics-Dashboard abrufen (Unity)

Plattform auswählen: iOS+ Android Flutter Unity


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

Für Android-Apps ist im Crashlytics Unity SDK 8.6.1+ automatisch die NDK-Absturzmeldung enthalten. Dadurch kann Crashlytics Unity-Abstürze, die durch IL2CPP verursacht werden, automatisch auf Android melden. Wenn Sie jedoch symbolisierte Stacktraces für Abstürze nativer Bibliotheken im Crashlytics-Dashboard sehen möchten, müssen Sie Symbolinformationen zur Build-Zeit mit der Firebase CLI hochladen.

  1. Achten Sie darauf, dass Sie das Crashlytics Unity SDK v8.6.1 oder höher verwenden. Laden Sie die aktuelle Version herunter.

  2. Umgebung und Projekt für das Hochladen von Symbolen einrichten:

    1. Folgen Sie der Anleitung zum Installieren der Firebase CLI.

      Wenn Sie die CLI bereits installiert haben, aktualisieren Sie sie auf die neueste Version.

    2. (nur für Apps mit Android-API-Level 30 oder höher) Aktualisieren Sie die AndroidManifest.xml-Vorlage Ihrer App, um das Pointer-Tagging zu deaktivieren:

      1. Klicken Sie das Kästchen für Android Player Settings > Publishing Settings > Build > Custom Main Manifest an.

      2. Öffnen Sie die Manifestvorlage unter Assets/Plugins/Android/AndroidManifest.xml.

      3. (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" ... />

  3. 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 im Crashlytics-Dashboard sehen möchten.

    1. Führen Sie im Dialogfeld Build-Einstellungen einen der folgenden Schritte aus:

      • Exportieren Sie das Projekt in ein Android Studio-Projekt, um es zu erstellen.

      • Erstellen Sie Ihre APK-Datei direkt im Unity-Editor.
        Achten Sie vor dem Erstellen darauf, dass das Kästchen für symbols.zip erstellen im Dialogfeld Build-Einstellungen aktiviert ist.

    2. Nachdem der Build abgeschlossen ist, generieren Sie eine Crashlytics-kompatible Symboldatei und laden Sie sie auf Firebase-Server hoch, indem Sie den folgenden Firebase-CLI-Befehl ausführen:

      firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
      • FIREBASE_APP_ID: Ihre Firebase-Android-App-ID (nicht Ihr Paketname)
        Beispiel für eine Firebase-Android-App-ID: 1:567383003300:android:17104a2ced0c9b9b

      • 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.

        • Das 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 Standardgenerators von Breakpad.

      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.

      --debug Bietet zusätzliche Debugging-Informationen