Testowanie implementacji Crashlytics


Wymuszanie awarii w celu przetestowania implementacji

  1. Znajdź istniejący GameObject, a następnie dodaj do niego ten skrypt. Ten skrypt spowoduje awarię testową kilka sekund po uruchomieniu aplikacji.

    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. Skompiluj aplikację i prześlij informacje o symbolach po zakończeniu kompilacji.

    • iOS+: wtyczka Firebase Unity Editor automatycznie konfiguruje projekt Xcode, aby przesyłać plik symboli.

    • Android: w przypadku aplikacji na Androida, które korzystają z IL2CPP, uruchom polecenie Firebase CLIcrashlytics:symbols:upload, aby przesłać plik symboli.

  3. Uruchom aplikację. Gdy będzie działać, obserwuj dziennik urządzenia i poczekaj, aż wyjątek zostanie wywołany z CrashlyticsTester.

    • iOS: wyświetl dzienniki w dolnym panelu Xcode.

    • Android: wyświetl logi, uruchamiając w terminalu to polecenie:adb logcat

  4. Otwórz Crashlyticspanel konsoli Firebase, aby zobaczyć awarię testu.

Jeśli po odświeżeniu konsoli i upływie 5 minut nadal nie widzisz testowego awarii, włącz rejestrowanie debugowania (w następnej sekcji).

Włącz rejestrowanie debugowania dla Crashlytics

Jeśli nie widzisz testowego awarii na Crashlytics, możesz użyć rejestrowania debugowania w Crashlytics, aby znaleźć przyczynę problemu.

  1. Włącz rejestrowanie debugowania w Firebase, dodając ten kod do inicjalizacji aplikacji:

    Firebase.FirebaseApp.LogLevel = Firebase.LogLevel.Debug;
  2. Wymuś awarię testową. W pierwszej sekcji na tej stronie znajdziesz instrukcje, jak to zrobić.

Jeśli po 5 minutach nie widzisz w Crashlyticspanelu Firebase konsoli logów z Firebase ani testowego błędu, skontaktuj się z zespołem pomocy Firebase i prześlij mu kopię danych wyjściowych logów, abyśmy mogli Ci pomóc w dalszym rozwiązywaniu problemu.

Dalsze kroki