Catch up on everthing we announced at this year's Firebase Summit. Learn more

Memulai Performance Monitoring untuk Android

Sebelum memulai

Tambahkan Firebase ke project Android jika Anda belum melakukannya.

Langkah 1: Tambahkan Performance Monitoring SDK ke aplikasi Anda

Setelah Anda menambahkan Performance Monitoring SDK, Firebase otomatis akan mulai mengumpulkan data untuk rendering layar aplikasi dan data yang terkait dengan siklus proses aplikasi (seperti waktu mulai aplikasi). Agar Firebase dapat memantau permintaan jaringan, Anda juga harus menambahkan plugin Gradle Performance Monitoring (langkah berikutnya).

  1. Dengan Firebase Android BoM, deklarasikan dependensi untuk library Android Performance Monitoring di file Gradle modul (level aplikasi) Anda (biasanya app/build.gradle).

    Java

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:29.0.0')
    
        // Declare the dependency for the Performance Monitoring library
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf'
    }
    

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

    (Alternatif) Deklarasikan dependensi library Firebase tanpa menggunakan BoM

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

    Perhatikan bahwa jika Anda menggunakan beberapa library Firebase di aplikasi Anda, sebaiknya gunakan BoM untuk mengelola versi library, yang memastikan bahwa semua versi kompatibel.

    dependencies {
        // Declare the dependency for the Performance Monitoring library
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf:20.0.3'
    }
    

    Kotlin+KTX

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:29.0.0')
    
        // Declare the dependency for the Performance Monitoring library
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf-ktx'
    }
    

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

    (Alternatif) Deklarasikan dependensi library Firebase tanpa menggunakan BoM

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

    Perhatikan bahwa jika Anda menggunakan beberapa library Firebase di aplikasi Anda, sebaiknya gunakan BoM untuk mengelola versi library, yang memastikan bahwa semua versi kompatibel.

    dependencies {
        // Declare the dependency for the Performance Monitoring library
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation 'com.google.firebase:firebase-perf-ktx:20.0.3'
    }
    

  2. Kompilasi ulang aplikasi Anda.

Langkah 2: Tambahkan plugin Performance Monitoring ke aplikasi Anda

Setelah Anda menambahkan plugin Gradle Performance Monitoring, Firebase otomatis akan mulai mengumpulkan data untuk permintaan jaringan HTTP/S. Dengan plugin tersebut, Anda juga dapat menginstrumentasikan trace kode kustom menggunakan anotasi @AddTrace.

  1. Di file Gradle modul (level aplikasi), biasanya app/build.gradle, terapkan plugin Performance Monitoring:

    apply plugin: 'com.android.application'
    apply plugin: 'com.google.gms.google-services'
    // Apply the Performance Monitoring plugin
    apply plugin: 'com.google.firebase.firebase-perf'
    
    android {
      // ...
    }
    
  2. Di file Gradle level root (level project), build.gradle, tambahkan aturan untuk menyertakan plugin Performance Monitoring.

    buildscript {
    
        repositories {
          // Check that you have the following line (if not, add it):
          google()  // Google's Maven repository
          // Add the Bintray repository
          jcenter()
        }
    
        dependencies {
          // ...
    
          // To benefit from the latest Performance Monitoring plugin features,
          // update your Android Gradle Plugin dependency to at least v3.4.0
          classpath 'com.android.tools.build:gradle:3.4.0'
    
          classpath 'com.google.gms:google-services:4.3.10'  // Google Services plugin
    
          // Add the dependency for the Performance Monitoring plugin
          classpath 'com.google.firebase:perf-plugin:1.4.0'  // Performance Monitoring plugin
        }
    }
    
  3. Kompilasi ulang aplikasi Anda.

Langkah 3: Buat peristiwa performa untuk tampilan data awal

Firebase mulai memproses peristiwa saat Anda berhasil menambahkan SDK ke aplikasi. Jika Anda masih melakukan pengembangan secara lokal, lakukan interaksi dengan aplikasi guna menghasilkan peristiwa untuk pengumpulan dan pemrosesan data awal.

  1. Hasilkan peristiwa dengan mengalihkan aplikasi dari latar belakang ke latar depan dan sebaliknya beberapa kali, berinteraksi dengan aplikasi Anda dengan berpindah-pindah dari layar ke layar, dan/atau memicu permintaan jaringan.

  2. Buka dasbor Performance di Firebase console. Anda akan melihat tampilan data awal dalam beberapa menit.

    Jika Anda tidak melihat tampilan data awal, lihat tips pemecahan masalah.

Langkah 4: (Opsional) Lihat pesan log untuk mencari peristiwa performa

  1. Aktifkan logging debug untuk Performance Monitoring pada waktu build dengan menambahkan elemen <meta-data> ke file AndroidManifest.xml aplikasi Anda, seperti berikut:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
    
  2. Periksa apakah ada pesan error di pesan log Anda.

  3. Performance Monitoring menandai pesan log-nya dengan FirebasePerformance. Dengan menggunakan pemfilteran logcat, Anda dapat secara khusus melihat trace durasi dan logging permintaan jaringan HTTP/S dengan menjalankan perintah berikut:

    adb logcat -s FirebasePerformance
  4. Cari jenis log berikut yang menunjukkan bahwa Performance Monitoring mencatat peristiwa performa ke dalam log:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Klik URL untuk melihat data Anda di Firebase console. Mungkin perlu waktu beberapa saat agar data diperbarui di dasbor.

Jika aplikasi Anda tidak mencatat peristiwa performa ke dalam log, baca tips pemecahan masalah.

Langkah 5: (Opsional) Tambahkan pemantauan kustom untuk kode tertentu

Untuk memantau data performa yang terkait dengan kode tertentu di aplikasi, Anda dapat menginstrumentasikan trace kode kustom.

Dengan trace kode kustom, Anda dapat mengukur durasi yang dibutuhkan aplikasi untuk menyelesaikan satu atau serangkaian tugas tertentu, seperti memuat kumpulan gambar atau membuat kueri untuk database. Metrik default untuk trace kode kustom adalah durasinya, tetapi Anda juga dapat menambahkan metrik kustom, seperti cache ditemukan dan peringatan memori.

Dalam kode, Anda dapat menentukan awal dan akhir trace kode kustom (dan menambahkan metrik kustom yang diinginkan) menggunakan API yang disediakan oleh Performance Monitoring SDK. Untuk aplikasi Android, Anda juga dapat memantau durasi metode tertentu menggunakan anotasi @AddTrace.

Baca artikel Menambahkan pemantauan untuk kode tertentu untuk mempelajari lebih lanjut fitur ini dan cara menambahkannya ke aplikasi Anda.

Langkah 6: Deploy aplikasi Anda lalu tinjau hasilnya

Setelah memvalidasi Performance Monitoring menggunakan satu atau beberapa perangkat uji, Anda dapat men-deploy versi terbaru aplikasi Anda kepada pengguna.

Anda dapat memantau data performa di dasbor Performance di Firebase console.

Masalah umum

  • Plugin Gradle Performance Monitoring v1.1.0 dapat menyebabkan ketidakcocokan pada dependensi Guava sehingga menghasilkan error berikut:

    Error:Execution failed for task ':app:packageInstantRunResourcesDebug'.
    > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;

    Jika melihat pesan error ini, Anda dapat mencoba salah satu langkah berikut:

    • Mengupgrade plugin Performance Monitoring ke v1.1.1 atau versi yang lebih baru (versi terbaru adalah v1.4.0).

    • Mengganti baris dependensi plugin Performance Monitoring di file Gradle level root (level project), build.gradle, sebagai berikut:

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath ('com.google.firebase:perf-plugin:1.1.0') {
                      exclude group: 'com.google.guava', module: 'guava-jdk5'
          }
        }
      }
      
  • Performance Monitoring melaporkan total ukuran payload untuk permintaan jaringan HTTP berdasarkan nilai yang ditetapkan pada header content-length HTTP. Nilai ini mungkin tidak selalu akurat.

  • Performance Monitoring hanya mendukung proses utama dalam aplikasi Android multiproses.

Langkah berikutnya