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 versiktx
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
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.9.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:
Bagaimana cara menggunakan versi library yang berbeda dari yang ditetapkan di BoM?
Berikut cara mengganti versi library yang ditetapkan dalam BoM:
Pertahankan baris untuk mengimpor platform BoM.
Pada baris dependensi library, tentukan versi library yang diinginkan. Misalnya, berikut cara mendeklarasikan dependensi jika Anda ingin menggunakan App Indexing v18.0.0, apa pun versi yang ditetapkan dalam BoM, tetapi Anda ingin menggunakan versi BoM untuk Authentication dan Cloud Firestore:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:33.9.0') // Declare the dependency for the App Indexing library and specify a version // This specified library version overrides the version designated in the BoM. implementation 'com.google.firebase:firebase-appindexing:18.0.0' // Declare the dependencies for the other Firebase libraries without specifying versions // These libraries will use the versions designated in the BoM. implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
Apakah BoM otomatis menambahkan semua library Firebase ke aplikasi saya?
Tidak. Untuk menambahkan dan menggunakan library Firebase di aplikasi, Anda harus mendeklarasikan setiap library sebagai baris dependensi terpisah dalam file Gradle modul (level aplikasi), (biasanya app/build.gradle
).
Penggunaan BoM memastikan bahwa versi semua library Firebase di aplikasi Anda kompatibel, tetapi BoM tidak benar-benar menambahkan library Firebase tersebut ke aplikasi Anda.
Apakah library ekstensi Kotlin (KTX) Firebase didukung oleh BoM?
Ya. Saat Anda mendeklarasikan baris dependensi library Firebase tertentu, cukup gunakan nama library KTX, seperti yang berikut:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:33.9.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-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
Dapatkah saya menggunakan BoM untuk menambahkan library Android yang bukan berasal dari Firebase?
Tidak. Firebase Android BoM hanya mengelola versi library untuk library Firebase. Satu-satunya pengecualian adalah penyertaan Google Mobile Ads SDK karena sangat umum digunakan di aplikasi Firebase.
Mengapa BoM adalah cara yang direkomendasikan untuk mengelola versi library Firebase?
Meskipun setiap versi library Firebase dibuat secara independen, library ini dibangun bersama untuk memastikan bahwa rilis terbaru setiap library kompatibel dengan library lainnya.
Dengan menggunakan BoM untuk mengelola versi library Firebase aplikasi, Anda tidak perlu melacak versi library Firebase mana yang kompatibel dengan library Firebase lainnya.
Meskipun Anda hanya menggunakan satu library Firebase di aplikasi Anda saat ini, sebaiknya tetap gunakan BoM karena mungkin saja suatu saat nanti Anda ingin menggunakan library Firebase lain.
Aplikasi saya menggunakan versi Gradle yang lebih lama dari 5.0. Apakah saya tetap dapat menggunakan BoM?
Ya, Anda masih dapat menggunakan BoM. Untuk Gradle 5.0 dan yang lebih baru, dukungan BoM diaktifkan secara otomatis. Namun, untuk versi Gradle sebelumnya, Anda hanya perlu mengaktifkan fitur BoM dan mengimpor BoM dengan cara yang sedikit berbeda.
Tambahkan
enableFeaturePreview('IMPROVED_POM_SUPPORT')
ke filesettings.gradle
.Impor BoM seperti library normal (tanpa pengubah
platform
) ke file Gradle modul (level aplikasi) (biasanyaapp/build.gradle
), seperti berikut:dependencies { // Import the Firebase BoM implementation 'com.google.firebase:firebase-bom:33.9.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' }
Bagaimana cara melaporkan masalah atau memberi masukan tentang 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.9.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 propertiunstrippedNativeLibsDir
dalam filebuild.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
- Dependensi Firebase Android SDK di layanan Google Play
- Menautkan aplikasi Firebase Anda ke Google Play
- Berintegrasi dengan project layanan game Play