Z tego krótkiego wprowadzenia dowiesz się, jak skonfigurować Firebase Crashlytics w swojej aplikacji z pakietem SDK Firebase Crashlytics, co pozwoli Ci generować kompleksowe raporty o awariach w konsoli Firebase. W Crashlytics na Androida otrzymujesz raporty o awariach, błędach niekrytycznych i błędach typu „Aplikacja nie odpowiada” (ANR).
Konfiguracja Crashlytics wymaga wykonania zadań zarówno w konsoli Firebase, jak i w IDE (np. dodanie pliku konfiguracji Firebase i pakietu SDK Crashlytics). Aby zakończyć konfigurację, musisz wymusić awarię testową, aby wysłać do Firebase pierwszy raport o awarii.
Zanim zaczniesz
Dodaj Firebase do swojego projektu na Androida, jeśli jeszcze nie zostało to zrobione. Jeśli nie masz aplikacji na Androida, możesz pobrać przykładową aplikację.
Zalecane: aby automatycznie otrzymywać logi menu nawigacyjnego pozwalające analizować działania użytkowników, które prowadzą do awarii, zdarzeń niekrytycznych lub błędów ANR, musisz włączyć Google Analytics w projekcie Firebase.
Jeśli w istniejącym projekcie Firebase nie masz włączonej usługi Google Analytics, możesz ją włączyć na karcie Integracje w sekcji
w konsoli Firebase. > Ustawienia projektu Jeśli tworzysz nowy projekt Firebase, włącz Google Analytics w trakcie procesu tworzenia projektu.
Upewnij się, że aplikacja ma tę minimalną wersję:
- Gradle 8.0
- Wtyczka Androida do obsługi Gradle w wersji 8.1.0
- Wtyczka do Gradle usług Google w wersji 4.4.1
Krok 1. Dodaj pakiet SDK Crashlytics do swojej aplikacji
<project>/<app-module>/build.gradle.kts
<project>/<app-module>/build.gradle
Do kontrolowania obsługi wersji biblioteki zalecamy używanie funkcji Firebase Android BoM.
Aby korzystać z logów menu nawigacyjnego, dodaj też do swojej aplikacji pakiet SDK Firebase dla Google Analytics. Sprawdź, czy w projekcie Firebase jest włączona usługa Google Analytics.
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.1.1")) // Add the dependencies for the Crashlytics and Analytics libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-crashlytics") implementation("com.google.firebase:firebase-analytics") }
Dzięki użyciu BoM Firebase Android BoM Twoja aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.
(Alternatywnie) Dodawanie zależności bibliotek Firebase bez korzystania z BM
Jeśli nie chcesz używać Firebase BoM, musisz określić każdą wersję biblioteki Firebase w wierszu zależności.
Pamiętaj, że jeśli w swojej aplikacji używasz wielu bibliotek Firebase, zdecydowanie zalecamy korzystanie z BoM do zarządzania wersjami bibliotek. Dzięki temu będziesz mieć pewność, że wszystkie wersje są zgodne.
dependencies { // Add the dependencies for the Crashlytics and Analytics libraries // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-crashlytics:19.0.2") implementation("com.google.firebase:firebase-analytics:22.0.2") }
Krok 2. Dodaj do aplikacji wtyczkę Crashlytics Gradle
W pliku Gradle na poziomie głównym (na poziomie projektu) (
<project>/build.gradle.kts
lub<project>/build.gradle
) dodaj wtyczkę Crashytics Gradle do blokuplugins
:Kotlin
plugins { // Make sure that you have the AGP plugin 8.1+ dependency id("com.android.application") version "8.1.4" apply false // ... // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency id("com.google.gms.google-services") version "4.4.2" apply false // Add the dependency for the Crashlytics Gradle plugin id("com.google.firebase.crashlytics") version "3.0.2" apply false }
Groovy
plugins { // Make sure that you have the AGP plugin 8.1+ dependency id 'com.android.application' version '8.1.4' apply false // ... // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency id 'com.google.gms.google-services' version '4.4.2' apply false // Add the dependency for the Crashlytics Gradle plugin id 'com.google.firebase.crashlytics' version '3.0.2' apply false }
Do pliku Gradle modułu (na poziomie aplikacji) (zwykle
<project>/<app-module>/build.gradle.kts
lub<project>/<app-module>/build.gradle
) dodaj wtyczkę Crashlytics Gradle:Kotlin
plugins { id("com.android.application") // ... // Make sure that you have the Google services Gradle plugin id("com.google.gms.google-services") // Add the Crashlytics Gradle plugin id("com.google.firebase.crashlytics") }
Groovy
plugins { id 'com.android.application' // ... // Make sure that you have the Google services Gradle plugin id 'com.google.gms.google-services' // Add the Crashlytics Gradle plugin id 'com.google.firebase.crashlytics' }
Krok 3. Wymuś awarię testową, aby dokończyć konfigurację
Aby zakończyć konfigurowanie Crashlytics i zobaczyć początkowe dane w panelu Crashlytics w konsoli Firebase, musisz wymusić awarię testową.
Dodaj do aplikacji kod, który pozwala wymusić awarię testową.
Aby dodać do aplikacji przycisk, który po naciśnięciu powoduje awarię, możesz użyć podanego niżej kodu w
MainActivity
aplikacji. Jest on oznaczony etykietą „Testuj awarię”.Kotlin+KTX
val crashButton = Button(this) crashButton.text = "Test Crash" crashButton.setOnClickListener { throw RuntimeException("Test Crash") // Force a crash } addContentView(crashButton, ViewGroup.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT))
Java
Button crashButton = new Button(this); crashButton.setText("Test Crash"); crashButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { throw new RuntimeException("Test Crash"); // Force a crash } }); addContentView(crashButton, new ViewGroup.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
Utworzyć i uruchomić aplikację.
Wymuś awarię testową, aby wysłać pierwszy raport o awarii aplikacji:
Otwórz aplikację na urządzeniu testowym lub w emulatorze.
W aplikacji naciśnij przycisk „Test Crash” dodany za pomocą powyższego kodu.
Po awarii aplikacji uruchom ją ponownie, aby mogła przesłać raport o awarii do Firebase.
Aby zobaczyć awarię testową, otwórz panel Crashlytics w konsoli Firebase.
Jeśli po odświeżeniu konsoli nadal nie widzisz awarii testowej, włącz logowanie debugowania, by sprawdzić, czy aplikacja wysyła raporty o awariach.
To wszystko. Crashlytics monitoruje teraz Twoją aplikację pod kątem awarii, błędów niekrytycznych i błędów ANR. Otwórz panel Crashlytics, aby przeglądać i analizować wszystkie raporty oraz statystyki.
Dalsze kroki
- Dostosuj konfigurację raportów o awariach, dodając raporty o awariach, logi, klucze i śledzenie błędów niekrytycznych.
- Integracja z Google Play pozwala filtrować raporty o awariach aplikacji na Androida według ścieżki Google Play bezpośrednio w panelu Crashlytics. Dzięki temu możesz lepiej skupić się na konkretnych kompilacjach w panelu.
-
W Android Studio możesz przeglądać i filtrować dane z Crashlytics.
- Okno App Quality Insights (AQI) w Android Studio pozwala wyświetlać dane Crashlytics wraz z kodem. Nie musisz już przełączać się między panelem Crashlytics a IDE, by debugować najważniejsze problemy.
- Uzyskaj dostęp do okna AQI w wersji Electric Eel (stabilnej) w Android Studio lub wypróbuj nowe funkcje AQI we Flamingo (beta). Pobierz wybraną wersję Androida Studio.
- Jak korzystać z okna AQI, dowiesz się z dokumentacji Androida Studio.
- Chętnie poznamy Twoją opinię. Prześlij nam opinię o przedziale AQI, przesyłając raport o błędzie.