Memahami Firebase untuk Android

Saat mengembangkan project Android menggunakan Firebase, Anda mungkin menemukan konsep yang tidak akrab di telinga atau spesifik untuk Firebase. Halaman ini bertujuan menjawab pertanyaan-pertanyaan tersebut atau mengarahkan Anda ke berbagai referensi untuk mempelajari lebih lanjut.

Jika ada pertanyaan terkait topik yang tidak dibahas di halaman ini, kunjungi salah satu komunitas online kami. Kami juga akan memperbarui halaman ini dengan topik baru secara berkala. Jadi, periksa kembali untuk melihat apakah kami telah menambahkan topik yang ingin Anda pelajari.

Plugin Firebase Assistant untuk Android Studio

Firebase Assistant adalah plugin Android Studio yang mendaftarkan aplikasi Android Anda ke project Firebase dan menambahkan file konfigurasi, plugin, serta dependensi Firebase yang diperlukan ke project Android Anda. Semuanya dapat dilakukan dari dalam Android Studio.

Ikuti petunjuk di halaman memulai untuk Android untuk menggunakan Firebase Assistant. Pastikan Anda menggunakan versi terbaru Android Studio dan Firebase Assistant (buka File > Check for updates).

Saat Anda memilih produk Firebase tertentu untuk ditambahkan ke aplikasi, Firebase Assistant otomatis akan mendeklarasikan dependensi yang diperlukan dalam file app/build.gradle Anda. Namun, untuk menggunakan fitur Firebase yang berada di luar kemampuan Firebase Assistant saat ini, Anda dapat membuat beberapa perubahan manual pada dependensi ini:

  • Jika Anda ingin menggunakan Firebase Android BoM, perbarui dependensi dalam file Gradle modul (level aplikasi) (biasanya app/build.gradle) untuk mengimpor platform BoM. Anda juga harus menghapus versi dari setiap baris dependensi library Firebase.

  • Jika Anda ingin menggunakan library ekstensi Kotlin, ubah baris dependensi yang ditambahkan ke file Gradle modul (level aplikasi), biasanya app/build.gradle, untuk menggunakan versi ktx library Firebase.

Layanan Google - plugin dan file konfigurasi

Sebagai bagian dari penambahan Firebase ke project Android, Anda perlu menambahkan plugin google-services dan file konfigurasi google-services.json ke project Anda.

Jika menambahkan Firebase ke project Android melalui Firebase console, Management REST API, atau Firebase CLI, Anda harus menambahkan plugin dan file konfigurasi secara manual ke project Anda. Namun, jika Anda menggunakan Firebase Assistant, tugas ini akan otomatis dilakukan selama proses penyiapan.

Baca dokumentasi Android untuk mempelajari cara plugin dan file konfigurasi layanan Google berfungsi bersama-sama.

Firebase Android BoM (Bill of Materials)

Melalui Firebase Android BoM (Bill of Materials), Anda dapat mengelola semua versi library Firebase dengan menentukan hanya satu versi, yaitu versi BoM.

Saat Anda menggunakan Firebase BoM di aplikasi, BoM akan otomatis menarik setiap versi library yang dipetakan ke versi BoM. Setiap versi library akan kompatibel. Saat Anda mengupdate versi BoM di aplikasi, semua library Firebase yang Anda gunakan di aplikasi akan diupdate ke versi yang dipetakan ke versi BoM tersebut.

Untuk mempelajari versi library Firebase yang dipetakan ke versi BoM tertentu, baca catatan rilis untuk versi BoM tersebut. Jika Anda perlu membandingkan versi library yang dipetakan ke satu versi BoM dengan versi BoM lain, gunakan widget perbandingan di bawah.

Pelajari lebih lanjut dukungan Gradle untuk platform BoM.

Berikut cara menggunakan Firebase Android BoM untuk mendeklarasikan dependensi dalam file Gradle modul (level aplikasi) (biasanya app/build.gradle). Saat menggunakan BoM, Anda tidak perlu menentukan setiap versi library di baris dependensi.

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

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Berikut beberapa pertanyaan umum (FAQ) terkait penggunaan Firebase Android BoM:

Perbandingan versi Firebase BoM

Modul library ekstensi Kotlin (KTX)

Modul library ekstensi Kotlin (KTX) Firebase adalah pelengkap kecil bagi modul library Firebase utama, dan Anda dapat menggunakannya untuk menulis kode Kotlin yang bagus dan idiomatis.

Untuk menggunakan modul library KTX di aplikasi Anda, ubah dependensi untuk menyertakan akhiran -ktx. Setiap modul KTX otomatis memiliki dependensi pada modul library utama, sehingga tidak perlu menyertakan kedua dependensi dalam aplikasi Anda.

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:33.6.0')

  // Declare the main module
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX module instead (which automatically has a dependency on the main module)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

Setiap modul KTX menyediakan ekstensi sintaksis modul utama yang berbeda. Misalnya, modul KTX Analytics mempermudah pencatatan peristiwa ke dalam log:

Sebelum (menggunakan modul utama)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

Setelah (menggunakan modul KTX)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

Semua produk Firebase menawarkan Modul KTX kecuali untuk Firebase ML dan App Indexing.

Jika Anda belum melakukannya, baca dokumentasi referensi API untuk modul KTX.

Modul fitur dan Play Feature Delivery

Mulai Mei 2021 (Firebase BoM v28.0.0), Firebase Android SDK dapat digunakan di modul fitur dinamis yang diinstal secara terpisah dari modul aplikasi dasar Anda.

Untuk mengaktifkan dukungan modul fitur dinamis, tambahkan dependensi berikut ke file build.gradle modul dasar:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta03'
}

Setelah menambahkan dukungan modul dinamis, Anda dapat menambahkan dependensi Firebase SDK (dengan atau tanpa Firebase BoM) ke modul fitur aplikasi dan menggunakannya seperti biasa.

Misalnya, jika aplikasi Anda menggunakan Realtime Database untuk mendukung fitur realtime tertentu, Anda dapat menambahkan dependensi firebase-database ke build.gradle modul fitur, bukan modul dasar. Tindakan ini akan mengurangi ukuran download untuk sebagian besar pengguna.

Perhatikan peringatan berikut saat menggunakan Firebase SDK dalam modul fitur:

  • Ada kemungkinan produk seperti Dynamic Links atau Firebase In-App Messaging yang mengandalkan peristiwa Analytics first_open melewatkan peristiwa ini jika digunakan dalam modul fitur dinamis.

  • Saat menggunakan Cloud Firestore dan Authentication secara bersamaan, Anda harus selalu menyertakan keduanya dalam modul yang sama. Jika tidak memungkinkan, pastikan Authentication dimuat sebelum Cloud Firestore. Jika tidak, beberapa operasi Cloud Firestore mungkin akan memiliki status autentikasi yang salah.

  • Saat menggunakan firebase-crashlytics-ndk sebagai dependensi modul fitur dinamis, Anda harus menetapkan properti unstrippedNativeLibsDir dalam file build.gradle, seperti yang dijelaskan dalam dokumentasi Crashlytics NDK.

Untuk mengetahui informasi modul fitur dan Play Feature Delivery lebih lanjut, baca artikel Ringkasan Play Feature Delivery.

Plugin Gradle layanan Google vs. layanan Google Play vs. Google Play Store

Beberapa bagian dari ekosistem Google, Firebase, dan Android memiliki konvensi penamaan yang mirip. Berikut penjelasan singkat mengenai setiap ekosistem ini:

Plugin Gradle layanan Google
Plugin Gradle (com.google.gms.google-services) yang berjalan pada waktu build guna memastikan aplikasi Anda memiliki konfigurasi yang tepat untuk mengakses Firebase API dan Google API
Terlepas dari namanya, plugin ini tidak memiliki hubungan dengan layanan Google Play (lihat entri berikutnya) dan tidak memengaruhi kemampuan aplikasi Anda pada runtime.
Plugin ini juga memproses file google-services.json yang Anda tambahkan ke aplikasi sebagai bagian dari penyiapan Firebase. Pelajari plugin Gradle layanan Google lebih lanjut.
Layanan Google Play
Layanan latar belakang tak terlihat yang berjalan di perangkat Android dan menyediakan beberapa Google API umum (seperti Google Maps dan Login dengan Google) untuk aplikasi di perangkat
Layanan ini memusatkan beberapa API umum tersebut ke dalam satu layanan sehingga mengurangi ukuran aplikasi lain dan memungkinkan perangkat menerima update keamanan otomatis dan peningkatan fitur tanpa update OS. Pelajari layanan Google Play lebih lanjut.
Google Play Store
Toko untuk mendownload aplikasi, film, buku, dan lain-lain di perangkat Android
Sebagai developer, Anda dapat mengelola distribusi, rilis, dan sebagainya untuk aplikasi Anda melalui Konsol Google Play. Jika memiliki Google Play Store, perangkat juga menjalankan layanan Google Play (lihat entri sebelumnya). Pelajari Google Play Store untuk developer lebih lanjut.
Layanan game Google Play
Kumpulan API untuk developer game seluler
Pelajari Layanan game Google Play lebih lanjut dan cara mengintegrasikan Firebase dengan project Layanan game Google Play Anda.

Referensi open source untuk Firebase Android SDK

Firebase mendukung pengembangan open source, dan kami mengundang kontribusi dan masukan dari komunitas.

Firebase Android SDK

Sebagian besar Firebase Android SDK dikembangkan sebagai library open source di repositori GitHub Firebase publik kami. Kami berupaya segera memindahkan sisa library Firebase yang dikembangkan secara pribadi ke GitHub publik kami.

Contoh panduan memulai

Firebase mengelola kumpulan contoh panduan memulai untuk sebagian besar Firebase API di Android. Temukan panduan memulai ini di repositori panduan memulai GitHub Firebase publik kami.

Anda dapat membuka setiap panduan memulai sebagai project Android Studio, lalu menjalankannya di perangkat seluler atau perangkat virtual (AVD). Atau, Anda dapat menggunakan panduan memulai ini sebagai kode contoh untuk menggunakan Firebase SDK.

Topik menarik lainnya