Ikuti semua informasi yang diumumkan di Firebase Summit, dan pelajari bagaimana Firebase dapat membantu Anda mempercepat pengembangan aplikasi dan menjalankan aplikasi dengan percaya diri. Pelajari Lebih Lanjut

Memulai Firebase Crashlytics

Panduan memulai ini menjelaskan cara menyiapkan Firebase Crashlytics di aplikasi Anda dengan Firebase Crashlytics SDK sehingga Anda bisa mendapatkan laporan kerusakan yang komprehensif di konsol Firebase.Dengan Crashlytics untuk Android, Anda mendapatkan laporan untuk kerusakan, kesalahan non-fatal, dan kesalahan "Application Not Responding" (ANR).

Menyiapkan Crashlytics memerlukan tugas di Firebase console dan IDE Anda (seperti menambahkan file konfigurasi Firebase dan Crashlytics SDK). Untuk menyelesaikan penyiapan, Anda harus memaksakan pengujian kerusakan untuk mengirimkan laporan kerusakan pertama Anda ke Firebase.

Sebelum kamu memulai

  1. Jika Anda belum melakukannya, tambahkan Firebase ke proyek Android Anda. Jika Anda tidak memiliki aplikasi Android, Anda dapat mengunduh contoh aplikasi .

  2. Direkomendasikan : Untuk mendapatkan fitur seperti crash-free users, breadcrumb logs, dan velocity alerts, Anda perlu mengaktifkan Google Analytics di project Firebase Anda.

    • Jika proyek Firebase Anda yang ada tidak mengaktifkan Google Analytics, Anda dapat mengaktifkan Google Analytics dari tab Integrasi di Anda > Setelan proyek di konsol Firebase.

    • Jika Anda membuat proyek Firebase baru, aktifkan Google Analytics selama alur kerja pembuatan proyek.

Langkah 1 : Tambahkan Crashlytics SDK ke aplikasi Anda

Dalam file Gradle modul (level aplikasi) Anda (biasanya <project>/<app-module>/build.gradle ), tambahkan dependensi untuk library Android Crashlytics. Kami merekomendasikan penggunaan Firebase Android BoM untuk mengontrol pembuatan versi library.

Untuk pengalaman optimal dengan Crashlytics, sebaiknya aktifkan Google Analytics di project Firebase Anda dan tambahkan SDK Firebase untuk Google Analytics ke aplikasi Anda.

Kotlin+KTX

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:31.2.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-ktx'
    implementation 'com.google.firebase:firebase-analytics-ktx'
}

Dengan menggunakan Firebase Android BoM , aplikasi Anda akan selalu menggunakan versi pustaka Android Firebase yang kompatibel.

(Alternatif) Tambahkan dependensi library Firebase tanpa menggunakan BoM

Jika Anda memilih untuk tidak menggunakan Firebase BoM, Anda harus menentukan setiap versi pustaka Firebase di baris dependensinya.

Perhatikan bahwa jika Anda menggunakan beberapa pustaka Firebase di aplikasi Anda, kami sangat menyarankan penggunaan BoM untuk mengelola versi pustaka, yang memastikan bahwa semua versi kompatibel.

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-ktx:18.3.3'
    implementation 'com.google.firebase:firebase-analytics-ktx:21.2.0'
}

Java

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:31.2.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'
}

Dengan menggunakan Firebase Android BoM , aplikasi Anda akan selalu menggunakan versi pustaka Android Firebase yang kompatibel.

(Alternatif) Tambahkan dependensi library Firebase tanpa menggunakan BoM

Jika Anda memilih untuk tidak menggunakan Firebase BoM, Anda harus menentukan setiap versi pustaka Firebase di baris dependensinya.

Perhatikan bahwa jika Anda menggunakan beberapa pustaka Firebase di aplikasi Anda, kami sangat menyarankan penggunaan BoM untuk mengelola versi pustaka, yang memastikan bahwa semua versi kompatibel.

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:18.3.3'
    implementation 'com.google.firebase:firebase-analytics:21.2.0'
}

Langkah 2 : Tambahkan plugin Crashlytics Gradle ke aplikasi Anda

  1. Di file Gradle level root (level proyek) Anda ( <project>/build.gradle ), tambahkan plugin Crashlytics Gradle sebagai dependensi buildscript:

    buildscript {
        repositories {
          // Make sure that you have the following two repositories
          google()  // Google's Maven repository
          mavenCentral()  // Maven Central repository
        }
    
        dependencies {
            ...
            classpath 'com.android.tools.build:gradle:7.2.0'
    
            // Make sure that you have the Google services Gradle plugin dependency
            classpath 'com.google.gms:google-services:4.3.15'
    
            // Add the dependency for the Crashlytics Gradle plugin
            classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.2'
        }
    }
  2. Dalam file Gradle modul (level aplikasi) Anda (biasanya <project>/<app-module>/build.gradle ), tambahkan plugin Gradle Crashlytics:

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

Langkah 3 : Paksa crash pengujian untuk menyelesaikan penyiapan

Untuk menyelesaikan penyiapan Crashlytics dan melihat data awal di dasbor Crashlytics di Firebase console, Anda perlu memaksakan pengujian error.

  1. Tambahkan kode ke aplikasi Anda yang dapat Anda gunakan untuk memaksakan error pengujian.

    Anda bisa menggunakan kode berikut di MainActivity aplikasi Anda untuk menambahkan tombol ke aplikasi Anda yang, jika ditekan, akan menyebabkan crash. Tombol tersebut diberi label "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. Bangun dan jalankan aplikasi Anda.

  3. Paksa error pengujian untuk mengirimkan laporan error pertama aplikasi Anda:

    1. Buka aplikasi Anda dari perangkat pengujian atau emulator.

    2. Di aplikasi Anda, tekan tombol "Test Crash" yang Anda tambahkan menggunakan kode di atas.

    3. Setelah aplikasi Anda mogok, mulai ulang agar aplikasi Anda dapat mengirimkan laporan kerusakan ke Firebase.

  4. Buka dasbor Crashlytics di Firebase console untuk melihat error pengujian Anda.

    Jika Anda telah me-refresh konsol dan Anda masih belum melihat pengujian error setelah lima menit, aktifkan logging debug untuk melihat apakah aplikasi Anda mengirim laporan kerusakan.


Dan itu saja! Crashlytics kini memantau aplikasi Anda untuk mendeteksi error, error non-fatal, dan ANR. Kunjungi dasbor Crashlytics untuk melihat dan menyelidiki semua laporan dan statistik Anda.

Langkah selanjutnya

  • Integrasikan dengan Google Play sehingga Anda dapat memfilter laporan kerusakan aplikasi Android Anda melalui jalur Google Play langsung di dasbor Crashlytics. Ini memungkinkan Anda untuk lebih memfokuskan dasbor Anda pada build tertentu.
  • Di Android Studio, lihat dan filter data Crashlytics.
    • Gunakan jendela App Quality Insights (AQI) di Android Studio untuk melihat data Crashlytics bersama kode Anda — tidak perlu bolak-balik antara dasbor Crashlytics dan IDE untuk mulai men-debug masalah teratas.
    • Dapatkan akses ke jendela AQI di rilis Electric Eel Android Studio (stabil) atau coba fitur AQI baru di Flamingo (beta). Unduh versi Android Studio yang Anda inginkan.
    • Pelajari cara menggunakan jendela AQI di dokumentasi Android Studio.
    • Kami akan senang mendengar dari Anda! Kirimi kami umpan balik tentang jendela AQI dengan mengajukan laporan bug .