Firebase Crashlytics'i kullanmaya başlayın

Bu hızlı başlangıç kılavuzunda, Firebase konsolunda kapsamlı kilitlenme raporları alabilmeniz için uygulamanızda Firebase Crashlytics SDK'yı kullanarak Firebase Crashlytics'i nasıl kuracağınız açıklanmaktadır. Android için Crashlytics'i kullanarak kilitlenmeler, önemli olmayan hatalar ve "Uygulama Yanıt Vermiyor" (ANR) hataları ile ilgili raporlar alırsınız.

Crashlytics'i kurmak hem Firebase konsolunda hem de IDE'nizde görevler (Firebase yapılandırma dosyası ve Crashlytics SDK eklemek gibi) gerektirir. Kurulumu tamamlamak için bir kilitlenme testi uygulayarak ilk kilitlenme raporunuzu Firebase'e göndermeniz gerekir.

Başlamadan önce

  1. Henüz yapmadıysanız Android projenize Firebase'i ekleyin. Bir Android uygulamanız yoksa örnek uygulama indirebilirsiniz.

  2. Önerilen: Kilitlenme, önemli olmayan hata veya ANR etkinliğine neden olan kullanıcı işlemlerini anlamak amacıyla içerik haritası günlüklerini otomatik olarak almak için Firebase projenizde Google Analytics'i etkinleştirmeniz gerekir.

    • Mevcut Firebase projenizde Google Analytics etkin değilse Firebase konsolundaki > Proje ayarları'nda yer alan Entegrasyonlar sekmesinden Google Analytics'i etkinleştirebilirsiniz.

    • Yeni bir Firebase projesi oluşturuyorsanız proje oluşturma iş akışı sırasında Google Analytics'i etkinleştirin.

  3. Uygulamanızda aşağıdaki gerekli minimum sürümlerin bulunduğundan emin olun:

    • Gradle 8.0
    • Android Gradle eklentisi 8.1.0
    • Google hizmetleri Gradle eklentisi 4.4.1

1. Adım: Crashlytics SDK'yı uygulamanıza ekleyin

<project>/<app-module>/build.gradle.kts<project>/<app-module>/build.gradle Kitaplık sürümü oluşturmayı kontrol etmek için Firebase Android BoM'u kullanmanızı öneririz.

İçerik haritası günlüklerinden yararlanmak amacıyla Google Analytics için Firebase SDK'sını da uygulamanıza ekleyin. Firebase projenizde Google Analytics'in etkinleştirilmiş olduğundan emin olun.

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")
}

Firebase Android BoM kullanıldığında uygulamanız Firebase Android kitaplıklarının her zaman uyumlu sürümlerini kullanır.

(Alternatif) Firebase kitaplığı bağımlılıklarını BoM'u kullanmadan ekleyin

Firebase BoM'yi kullanmamayı seçerseniz her Firebase kitaplık sürümünü bağımlılık satırında belirtmeniz gerekir.

Uygulamanızda birden fazla Firebase kitaplığı kullanıyorsanız kitaplık sürümlerini yönetmek için tüm sürümlerin uyumlu olmasını sağlamak için BoM kullanmanızı kesinlikle öneririz.

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")
}
Kotlin'e özel bir kitaplık modülü mü arıyorsunuz? Ekim 2023'ten (Firebase BoM 32.5.0) itibaren, hem Kotlin hem de Java geliştiricileri ana kitaplık modülüne başvurabilir. (Ayrıntılar için Bu girişimle ilgili sık sorulan sorular bölümüne göz atın).

2. Adım: Uygulamanıza Crashlytics Gradle eklentisini ekleyin

  1. Kök düzeyindeki (proje düzeyindeki) Gradle dosyanızda (<project>/build.gradle.kts veya <project>/build.gradle), Crashlytics Gradle eklentisini plugins bloğuna ekleyin:

    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. Modül (uygulama düzeyi) Gradle dosyanıza (genellikle <project>/<app-module>/build.gradle.kts veya <project>/<app-module>/build.gradle), Crashlytics Gradle eklentisini ekleyin:

    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'
    }

3. adım: Kurulumu tamamlamak için kilitlenme testini zorlayın

Crashlytics'in kurulumunu tamamlamak ve Firebase konsolunun Crashlytics kontrol panelinde ilk verileri görmek için bir kilitlenme testi uygulamanız gerekir.

  1. Uygulamanıza kilitlenme testi yapmak için kullanabileceğiniz bir kod ekleyin.

    Basıldığında kilitlenmeye neden olan bir düğmeyi uygulamanıza eklemek için uygulamanızın MainActivity öğesinde aşağıdaki kodu kullanabilirsiniz. Düğmenin etiketi "Test Çökmesi"dir.

    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. Uygulamanızı derleyip çalıştırın.

  3. Uygulamanızın ilk kilitlenme raporunu göndermek için test kilitlenmesini zorlayın:

    1. Uygulamanızı test cihazınızdan veya emülatörden açın.

    2. Uygulamanızda, yukarıdaki kodu kullanarak eklediğiniz "Kilitlenme Testi" düğmesine basın.

    3. Kilitlenen uygulamanızın, kilitlenme raporunu Firebase'e gönderebilmesi için uygulamanızı yeniden başlatın.

  4. Test kilitlenmenizi görmek için Firebase konsolunun Crashlytics kontrol paneline gidin.

    Konsolu yenilediyseniz ve beş dakika geçmesine rağmen test kilitlenmesini hâlâ görmüyorsanız uygulamanızın kilitlenme raporları gönderip göndermediğini görmek için hata ayıklama günlük kaydını etkinleştirin.


Hepsi bu kadar! Crashlytics artık uygulamanızı kilitlenmeler, önemli olmayan hatalar ve ANR'ler için izlemektedir. Tüm raporlarınızı ve istatistiklerinizi görüntüleyip incelemek için Crashlytics kontrol panelini ziyaret edin.

Sonraki adımlar

  • Google Play ile entegre ederek Android uygulamanızın kilitlenme raporlarını doğrudan Crashlytics kontrol panelinde Google Play kanalına göre filtreleyebilirsiniz. Bu sayede kontrol panelinizi belirli derlemelere daha iyi odaklayabilirsiniz.
  • Android Studio'da, Crashlytics verilerini görüntüleyin ve filtreleyin.
    • Kodunuzun yanı sıra Crashlytics verilerini görüntülemek için Android Studio'daki Uygulama Kalitesi Analizleri (AQI) penceresini kullanın. En sık karşılaşılan sorunlar için hata ayıklamaya başlamak için Crashlytics kontrol paneli ile IDE arasında gidip gelmeniz gerekmez.
    • Android Studio'nun Elektrikli Eel sürümündeki (kararlı) HKİ penceresine erişin veya Flamingo'daki (beta) yeni HKİ özelliklerini deneyin. İstediğiniz Android Studio sürümünü indirin.
    • Android Studio dokümanlarından HKİ penceresinin nasıl kullanılacağını öğrenin.
    • Görüşlerinizi öğrenmekten memnuniyet duyarız. Hata raporu göndererek bize HKİ aralığı hakkında geri bildirim gönderin.