Crashlytics-Implementierung testen


Absturz erzwingen, um die Implementierung zu testen

  1. Suchen Sie eine vorhandene GameObject und fügen Sie ihr das folgende Script hinzu. Dieses Script führt einige Sekunden nach dem Ausführen Ihrer App zu einem 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 nach Abschluss des Builds hoch.

    • iOS und höher: Das Firebase Unity Editor-Plug-in konfiguriert Ihr Xcode-Projekt automatisch für den Upload Ihrer Symboldatei.

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

  3. Führen Sie die App aus. Beobachten Sie das Geräteprotokoll und warten Sie, bis die Ausnahme durch die CrashlyticsTester ausgelöst wird.

    • iOS und höher: Protokolle werden im unteren Bereich von Xcode angezeigt.

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

  4. Rufen Sie das Crashlytics-Dashboard der Firebase-Konsole auf, um den Absturz des Tests zu sehen.

Wenn Sie die Konsole aktualisiert haben und der Test nach fünf Minuten immer noch nicht abgestürzt ist, aktivieren Sie die Debug-Protokollierung (nächster Abschnitt).

Debug-Protokollierung für Crashlytics aktivieren

Wenn der Absturz des Tests im Crashlytics-Dashboard nicht angezeigt wird, können Sie mithilfe von Debug-Logs für Crashlytics das Problem eingrenzen.

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

    Firebase.FirebaseApp.LogLevel = Firebase.LogLevel.Debug;
  2. Einen Testabsturz erzwingen Im ersten Abschnitt dieser Seite wird beschrieben, wie das geht.

Wenn nach fünf Minuten keine Logs von Firebase oder ein Absturz des Tests im CrashlyticsDashboard der Firebase Console angezeigt werden, wenden Sie sich mit einer Kopie Ihrer Logausgabe an den Firebase-Support, damit wir Ihnen bei der weiteren Fehlerbehebung helfen können.

Nächste Schritte