Pierwsze kroki z Firebase Crashlytics

Z tego krótkiego wprowadzenia dowiesz się, jak skonfigurować Firebase Crashlytics w swojej aplikacji za pomocą pakietu SDK Firebase Crashlytics, aby otrzymywać kompleksowe raporty o awariach w konsoli Firebase. Dzięki Crashlytics na Androida otrzymujesz raporty o awariach, błędach niekrytycznych i błędach typu „Aplikacja nie odpowiada” (ANR).

Aby skonfigurować Crashlytics, musisz wykonać zadania zarówno w konsoli Firebase, jak i w IDE (np. dodanie pliku konfiguracji Firebase i pakietu SDK Crashlytics). Aby dokończyć konfigurację, musisz wymusić awarię testową, aby wysłać pierwszy raport o tej awarii do Firebase.

Zanim zaczniesz

  1. Dodaj Firebase do swojego projektu na Androida, jeśli jeszcze go nie masz. Jeśli nie masz aplikacji na Androida, możesz pobrać przykładową aplikację.

  2. Zalecane: aby automatycznie pobierać dzienniki menu nawigacyjnego, które pozwalają analizować działania użytkowników, które prowadzą do awarii, błędów niekrytycznych lub błędów ANR, musisz włączyć Google Analytics w swoim projekcie Firebase.

    • Jeśli w istniejącym projekcie Firebase nie masz włączonej usługi Google Analytics, możesz włączyć Google Analytics na karcie Integracje w konsoli Firebase na stronie > Ustawienia projektu.

    • Jeśli tworzysz nowy projekt Firebase, włącz Google Analytics w trakcie procesu tworzenia projektu.

  3. Upewnij się, że aplikacja ma minimalną wymaganą wersję:

    • Gradle 8.0
    • Wtyczka Androida do obsługi Gradle 8.1.0
    • Wtyczka usług Google do Gradle 4.4.1

Krok 1. Dodaj do aplikacji pakiet SDK Crashlytics

<project>/<app-module>/build.gradle.kts<project>/<app-module>/build.gradle Do kontrolowania obsługi wersji biblioteki zalecamy używanie BOM Firebase na Androida.

Aby korzystać z dzienników menu nawigacyjnego, dodaj do aplikacji pakiet SDK Firebase dla Google Analytics. Upewnij się, że w projekcie Firebase włączono Google Analytics.

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.0.0"))

    // 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 wykorzystaniu BM od Firebase Android Twoja aplikacja zawsze będzie używała zgodnych wersji bibliotek Firebase na Androida.

(Alternatywnie) Dodaj zależności biblioteki Firebase bez użycia BoM.

Jeśli nie chcesz używać BoM Firebase, musisz określić każdą wersję biblioteki Firebase w wierszu zależności.

Pamiętaj, że jeśli w aplikacji używasz wielu bibliotek Firebase, zdecydowanie zalecamy korzystanie z BoM do zarządzania wersjami biblioteki. Zapewni to zgodność wszystkich wersji.

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.0")
    implementation("com.google.firebase:firebase-analytics:22.0.0")
}
Szukasz modułu biblioteki dotyczącego konkretnego narzędzia Kotlin? Od października 2023 r. (Firebase BoM w wersji 32.5.0) deweloperzy korzystający z Kotlin i Javy mogą korzystać z modułu biblioteki głównej (szczegółowe informacje znajdziesz w odpowiedziach na najczęstsze pytania na temat tej inicjatywy).

Krok 2. Dodaj do aplikacji wtyczkę Crashlytics Gradle

  1. W pliku Gradle na poziomie głównym (na poziomie projektu) (<project>/build.gradle.kts lub <project>/build.gradle) dodaj wtyczkę Gradle Crashlytics do bloku plugins:

    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.1" apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id("com.google.firebase.crashlytics") version "3.0.0" 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.1' apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics' version '3.0.0' apply false
    }
    
  2. W 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 dokończyć konfigurowanie Crashlytics i wyświetlić dane początkowe w panelu Crashlytics w konsoli Firebase, musisz wymusić awarię testową.

  1. Dodaj do aplikacji kod, którego możesz użyć, aby wymusić awarię testową.

    Możesz użyć tego kodu w polu MainActivity aplikacji, aby dodać do niej przycisk, który po naciśnięciu powoduje awarię. Przycisk jest oznaczony etykietą „Test Crash”.

    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));
    
  2. Stwórz i uruchom aplikację.

  3. Wymuś awarię testową, aby wysłać pierwszy raport o awarii aplikacji:

    1. Otwórz aplikację z urządzenia testowego lub emulatora.

    2. W aplikacji kliknij przycisk „Testuj awarię” dodany za pomocą powyższego kodu.

    3. Gdy aplikacja ulegnie awarii, uruchom ją ponownie, aby wysyłała raport o awariach do Firebase.

  4. Otwórz panel Crashlytics w konsoli Firebase, aby zobaczyć awarię testową.

    Jeśli po odświeżeniu konsoli nadal nie widzisz awarii testowej, po 5 minutach włącz rejestrowanie debugowania, aby sprawdzić, czy Twoja 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 wyświetlić i przeanalizować wszystkie raporty i statystyki.

Dalsze kroki

  • 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 skoncentrować się w panelu na konkretnych kompilacjach.
  • W Android Studio wyświetl i przefiltruj dane Crashlytics.
    • Użyj okna App Quality Insights (AQI) w Android Studio, aby wyświetlać dane Crashlytics razem z kodem. Nie musisz przełączać się między panelem Crashlytics a IDE, aby rozpocząć debugowanie najważniejszych problemów.
    • Uzyskaj dostęp do okna AQI w wersji Electric Eel (stabilna) w Android Studio lub wypróbuj nowe funkcje AQI we Flamingo (beta). Pobierz odpowiednią wersję Android Studio.
    • Informacje o tym, jak używać okna AQI, znajdziesz w dokumentacji Android Studio.
    • Chętnie poznamy Twoją opinię. Aby przesłać nam opinię na temat okna AQI, prześlij raport o błędzie.