Wymuszanie awarii w celu przetestowania implementacji
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"); } } }
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 CLI
crashlytics:symbols:upload
, aby przesłać plik symboli.
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
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.
Włącz rejestrowanie debugowania w Firebase, dodając ten kod do inicjalizacji aplikacji:
Firebase.FirebaseApp.LogLevel = Firebase.LogLevel.Debug;
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
- Dostosuj konfigurację raportu o awariach, dodając raportowanie z możliwością rezygnacji, logi, klucze i śledzenie błędów niekrytycznych.