Testowanie implementacji Crashlytics (Flutter)

Wybierz platformę: iOS+ Android Flutter Unity


Skorzystaj z tego przewodnika, jeśli po wykonaniu czynności opisanych w przewodniku dla początkujących, nadal nie widzisz awarii na panelu Crashlytics.

Wymuszenie awarii w celu przetestowania implementacji

  1. Dodaj do aplikacji kod, którego możesz użyć, aby wymusić zgłoszenie wyjątku testowego.

    Jeśli dodasz obsługę błędów, która wywołuje FirebaseCrashlytics.instance.recordError(error, stack, fatal: true) w Zone najwyższego poziomu, możesz użyć tego kodu, aby dodać do aplikacji przycisk, który po naciśnięciu zgłosi wyjątek testowy:

    TextButton(
        onPressed: () => throw Exception(),
        child: const Text("Throw Test Exception"),
    ),
    
  2. Skompiluj i uruchom aplikację.

  3. Wymuś zgłoszenie wyjątku testowego, aby wysłać pierwszy raport z aplikacji:

    1. Otwórz aplikację na urządzeniu testowym lub emulatorze.

    2. W aplikacji naciśnij przycisk wyjątku testowego, który został dodany za pomocą powyższego kodu.

  4. W konsoli Firebase otwórz panel DevOps i zaangażowanie > Crashlytics, aby sprawdzić raport o awarii testowej .

    Jeśli po odświeżeniu konsoli nadal nie widzisz awarii testowej po 5 minutach, spróbuj włączyć rejestrowanie debugowania (następna sekcja).

Włączanie rejestrowania debugowania w Crashlytics

Jeśli nie widzisz awarii testowej na panelu Crashlytics, możesz użyć rejestrowania debugowania w Crashlytics, aby pomóc w rozwiązaniu problemu.

Platformy Apple

  1. Włącz rejestrowanie debugowania:

    1. W Xcode kliknij Product (Produkt) > Scheme (Schemat) > Edit scheme (Edytuj schemat).

    2. W menu po lewej stronie kliknij Run (Uruchom), a następnie wybierz kartę Arguments (Argumenty).

    3. W sekcji Arguments Passed on Launch (Argumenty przekazywane przy uruchamianiu) dodaj -FIRDebugEnabled.

  2. Wymuś awarię testową. Pierwsza sekcja na tej stronie opisuje, jak to zrobić.

  3. W dziennikach wyszukaj komunikat logu z Crashlytics, który zawiera ten ciąg znaków. Potwierdza on, że aplikacja wysyła informacje o awariach do Firebase.

    Completed report submission

Jeśli po 5 minutach nadal nie widzisz tego dziennika ani awarii testowej na panelu DevOps i zaangażowanie > Crashlytics w konsoli Firebase, skontaktuj się z zespołem pomocy Firebase i prześlij kopię danych wyjściowych dziennika, abyśmy mogli Ci pomóc w dalszym rozwiązywaniu problemów.

Android

  1. Włącz i wyświetl rejestrowanie debugowania w Crashlytics:

    1. Zanim uruchomisz aplikację, ustaw tę flagę powłoki adb na DEBUG:

      adb shell setprop log.tag.FirebaseCrashlytics DEBUG
    2. Wyświetl dzienniki na urządzeniu, uruchamiając to polecenie:

      adb logcat -s FirebaseCrashlytics
  2. Wymuś awarię testową. Pierwsza sekcja na tej stronie opisuje, jak to zrobić.

  3. W danych wyjściowych logcat poszukaj tego komunikatu lub kodu 204. Oba potwierdzają, że aplikacja wysyła informacje o awariach do Firebase.

    Crashlytics report upload complete

Jeśli po 5 minutach nadal nie widzisz tego dziennika ani awarii testowej na panelu DevOps i zaangażowanie > Crashlytics w konsoli Firebase, skontaktuj się z zespołem pomocy Firebase i prześlij kopię danych wyjściowych dziennika, abyśmy mogli Ci pomóc w dalszym rozwiązywaniu problemów.

Dalsze kroki