Im Crashlytics-Dashboard sind lesbare Absturzberichte verfügbar.


iOS+ (Apple-Plattformen)

Für Apple-Plattform-Apps, die das Crashlytics Unity SDK 8.2.0 oder höher verwenden, wird das Firebase Das Unity Editor-Plug-in konfiguriert Ihr Xcode-Projekt automatisch für den Upload . Lade die aktuelle Version herunter.

Android

Für Android-Apps enthält das Crashlytics Unity SDK 8.6.1 und höher automatisch NDK-Absturzberichte. So kann Crashlytics automatisch Unity-IL2CPP-Abstürze auf Android-Geräten melden. Wenn Sie jedoch symbolische Stapelabzüge für Abstürze von nativen Bibliotheken im Crashlytics-Dashboard sehen möchten, müssen Sie Symbolinformationen zum Zeitpunkt des Builds mit der Firebase-Befehlszeile hochladen.

  1. Sie benötigen das Crashlytics Unity SDK 8.6.1 oder höher. Laden Sie die neueste Version herunter.

  2. Richten Sie Ihre Umgebung und Ihr Projekt für den Symbolupload ein:

    1. Folgen Sie der Anleitung zum Installieren der Firebase-Befehlszeile.

      Wenn Sie die Befehlszeile bereits installiert haben, müssen Sie auf die neueste Version aktualisieren.

    2. (nur für Apps mit Android API-Level 30 oder höher) Aktualisieren Sie die AndroidManifest.xml-Vorlage zum Deaktivieren des Zeiger-Taggings:

      1. Aktiviere das Kontrollkästchen für Android Player-Einstellungen > Veröffentlichungseinstellungen > Erstellen > Benutzerdefiniertes Hauptmanifest

      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 Anwendungs-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 Build erstellen für die Sie symbolisch dargestellte Stacktraces im Firebase-Konsole.

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

      • In ein Android Studio-Projekt exportieren, um dein Projekt zu erstellen oder

      • Erstelle dein APK direkt über den Unity Editor.
        Vergewissern Sie sich vor dem Erstellen, dass das Kontrollkästchen Create icon.zip wurde im Dialogfeld Build Settings (Build-Einstellungen) ausgewählt.

    2. Nachdem der Build abgeschlossen ist, generieren Sie eine Crashlytics-kompatible Symboldatei und laden Sie sie mit dem folgenden Firebase-Befehl auf die Firebase-Server hoch:

      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 vom Befehlszeile

        • In ein Android Studio-Projekt exportiert – PATH/TO/SYMBOLS ist das Verzeichnis unityLibrary/symbols, Dieser wird im exportierten Projektstammverzeichnis erstellt, nachdem Sie die Anwendung erstellt haben. über Gradle oder Android Studio.

        • Das APK wurde direkt in Unity erstellt. PATH/TO/SYMBOLS ist der Pfad der gezippten Symboldatei, die im Stammverzeichnis des Projekts generiert wurde, als der Build abgeschlossen wurde (z. B. myproject/myapp-1.0-v100.symbols.zip).

      Erweiterte Optionen für die Verwendung des Firebase-Befehlszeile zum Erstellen und Hochladen von Symboldateien

      Flag Beschreibung
      --generator=csym

      Der alte cSYM-Symboldateigenerator wird anstelle des standardmäßigen Breakpad-Generators verwendet.

      Nicht empfohlen. Wir empfehlen, den Standardgenerator für Breakpad-Symboldateien zu verwenden.

      --generator=breakpad

      Verwendet den Breakpad-Symboldateigenerator

      Standardmäßig wird Breakpad für die Symboldateigenerierung verwendet. Verwenden Sie dieses Flag nur, wenn Sie symbolGenerator { csym() } in Ihrer Build-Konfiguration haben und es überschreiben möchten, Breakpad.

      --dry-run

      Generiert die Symboldateien, lädt sie aber nicht hoch

      Dieses Flag ist nützlich, wenn Sie den Inhalt der Dateien, die gesendet werden.

      --debug Zusätzliche Debugging-Informationen