Crashlytics-Implementierung testen (Unity)

Plattform auswählen: iOS+ Android Flutter Unity


Verwenden Sie diesen Leitfaden, wenn Sie den Startleitfaden befolgt haben und im Crashlytics-Dashboard immer noch keine Abstürze angezeigt werden.

Absturz erzwingen, um die Implementierung zu testen

  1. Suchen Sie eine vorhandene GameObject-Datei und fügen Sie das folgende Script hinzu. Dieses Script verursacht einige Sekunden nach dem Ausführen der App einen Testabsturz.

    using System;
    using UnityEngine;
    
    public class CrashlyticsTester : MonoBehaviour {
    
        int updatesBeforeException;
    
        // Use this for initialization
        void Start () {
          updatesBeforeException = 0;
        }
    
        // Update is called once per frame
        void Update()
        {
            // Call the exception-throwing method here so that it's run
            // every frame update
            throwExceptionEvery60Updates();
        }
    
        // A method that tests your Crashlytics implementation by throwing an
        // exception every 60 frame updates. You should see reports in the
        // Firebase console a few minutes after running your app with this method.
        void throwExceptionEvery60Updates()
        {
            if (updatesBeforeException > 0)
            {
                updatesBeforeException--;
            }
            else
            {
                // Set the counter to 60 updates
                updatesBeforeException = 60;
    
                // Throw an exception to test your Crashlytics implementation
                throw new System.Exception("test exception please ignore");
            }
        }
    }
  2. Erstellen Sie Ihre App und laden Sie die Symbolinformationen hoch, nachdem der Build abgeschlossen ist.

    • iOS+: Das Firebase Unity Editor-Plug-in konfiguriert Ihr Xcode-Projekt automatisch so, dass Ihre Symboldatei hochgeladen wird.

    • Android: Führen Sie für Ihre Android-Apps, die IL2CPP verwenden, den Firebase-CLI-Befehl crashlytics:symbols:upload aus, um Ihre Symboldatei hochzuladen.

  3. Führen Sie Ihre App aus. Sobald die App ausgeführt wird, beobachten Sie das Geräteprotokoll und warten Sie, bis die Ausnahme von CrashlyticsTester ausgelöst wird.

    • iOS+: Logs im unteren Bereich von Xcode ansehen.

    • Android: Führen Sie im Terminal den folgenden Befehl aus, um die Logs aufzurufen: adb logcat.

  4. Rufen Sie in der Firebase-Konsole das Dashboard DevOps & Engagement > Crashlytics auf, um nach dem Testabsturzbericht zu suchen.

    Wenn Sie die Console aktualisiert haben und der Testabsturz nach fünf Minuten immer noch nicht angezeigt wird, aktivieren Sie das Debugging-Logging (siehe nächster Abschnitt).

Debugging-Log für Crashlytics aktivieren

Wenn der Testabsturz nicht im Crashlytics-Dashboard angezeigt wird, können Sie das Debugging-Logging für Crashlytics verwenden, um das Problem zu finden.

  1. Aktivieren Sie das Debugging-Logging für Firebase, indem Sie der App-Initialisierung den folgenden Code hinzufügen:

    Firebase.FirebaseApp.LogLevel = Firebase.LogLevel.Debug;
  2. Erzwingen Sie einen Testabsturz. Im ersten Abschnitt auf dieser Seite wird beschrieben, wie Sie dazu vorgehen.

Wenn Sie dieses Protokoll oder Ihren Testabsturz nach fünf Minuten immer noch nicht im Dashboard DevOps & Engagement > Crashlytics der Firebase-Konsole sehen, wenden Sie sich mit einer Kopie Ihrer Protokollausgabe an den Firebase-Support, damit wir Ihnen bei der weiteren Fehlerbehebung helfen können.

Nächste Schritte