Halaman ini menyajikan gambaran umum singkat beberapa konsep penting terkait project Firebase. Jika tersedia, ikuti link untuk menemukan informasi lebih lengkap tentang fitur, layanan, alat, dan praktik terbaik.
Hubungan antara project, aplikasi, dan produk Firebase
Project Firebase adalah entity level teratas untuk Firebase. Dalam sebuah project, Anda dapat mendaftarkan aplikasi Apple, Android, atau web Anda. Setelah mendaftarkan aplikasi ke Firebase, Anda dapat menambahkan Firebase SDK untuk sejumlah produk Firebase, seperti Analytics, Cloud Firestore, Performance Monitoring, atau Remote Config.
Pelajari informasi mendetail tentang proses ini lebih lanjut di Panduan Memulai untuk platform Anda:
iOS+ | Android |
web | Unity | C++ |
Flutter.
Memahami hierarki project Firebase
Diagram ini menunjukkan hierarki dasar project Firebase. Berikut adalah hubungan utamanya:
Project Firebase mirip seperti container untuk semua aplikasi Anda, serta resource dan layanan apa pun yang disediakan untuk project tersebut.
Project Firebase dapat memiliki satu atau beberapa Aplikasi Firebase yang terdaftar (misalnya, versi iOS dan Android dari suatu aplikasi, atau versi gratis dan berbayar dari aplikasi tersebut).
Semua Aplikasi Firebase yang terdaftar ke project Firebase yang sama akan berbagi dan memiliki akses ke semua resource dan layanan yang sama yang disediakan untuk project tersebut. Berikut beberapa contohnya:
Semua Aplikasi Firebase yang terdaftar ke project Firebase yang sama memiliki backend yang sama, seperti Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage, dan Cloud Functions.
Semua Aplikasi Firebase yang terdaftar ke project Firebase yang sama dikaitkan dengan properti Google Analytics yang sama, di mana setiap Aplikasi Firebase merupakan aliran data terpisah di properti tersebut.
Hubungan antara project Firebase dan Google Cloud
Saat membuat project Firebase baru, Anda sebenarnya membuat project Google Cloud di balik layar. Anda bahkan dapat membuat project Google Cloud terlebih dahulu, lalu menambahkan Firebase ke project tersebut nanti. Anggap project Google Cloud sebagai container virtual untuk data, kode, konfigurasi, dan layanan.
Perlu diperhatikan bahwa untuk semua project Firebase, Firebase akan otomatis menambahkan label firebase:enabled
dalam halaman Label untuk project Anda di Google Cloud console. Pelajari label ini lebih lanjut di FAQ kami.
Karena project Firebase adalah project Google Cloud:
Anda dapat mengakses dan berinteraksi dengan project di Firebase console, di Google Cloud console, dan di Konsol API Google.
Anda dapat berinteraksi dengan project menggunakan Firebase CLI, gcloud CLI, dan resource Terraform dari Google.
Dalam suatu project, Anda dapat menggunakan produk dan API, baik dari Firebase maupun Google Cloud.
Izin dan peran IAM untuk suatu project digunakan secara bersama-sama di seluruh Firebase dan Google Cloud. Setiap akses yang dimiliki oleh anggota project (yaitu, akun utama) ke project Google Cloud Anda juga akan berlaku untuk project Firebase Anda (dan sebaliknya).
Tagihan untuk project berlaku di seluruh Firebase dan Google Cloud. Jika penagihan diaktifkan di project Google Cloud, project Firebase Anda akan menggunakan paket harga Blaze bayar sesuai penggunaan dari Firebase.
ID unik untuk project (seperti nomor project dan project ID) digunakan secara bersama-sama di seluruh Firebase dan Google Cloud.
Setiap hierarki resource yang diterapkan ke project Google Cloud Anda (misalnya, organisasi, folder, dsb.) juga akan berlaku untuk project Firebase Anda.
Menghapus sebuah project akan menghapusnya di Firebase dan Google Cloud.
Menghapus atau mengubah resource atau data dalam project berlaku di seluruh Firebase dan Google Cloud.
Menyiapkan project Firebase dan mendaftarkan aplikasi
Anda dapat menyiapkan project Firebase dan mendaftarkan aplikasi di Firebase console (atau, untuk kasus penggunaan lanjutan, melalui Firebase Management REST API atau Firebase CLI). Saat menyiapkan project dan mendaftarkan aplikasi, Anda harus membuat beberapa keputusan organisasi dan menambahkan informasi konfigurasi khusus Firebase ke project lokal.
Untuk aplikasi produksi, Anda harus menyiapkan alur kerja pengembangan yang jelas, yang biasanya melibatkan penggunaan beberapa lingkungan. Tinjau dokumentasi kami tentang alur kerja developer, termasuk praktik terbaik umum dan pedoman keamanan umum untuk menyiapkan project Firebase dan mendaftarkan aplikasi guna membuat alur kerja pengembangan.
Berinteraksi dengan project Firebase
Selain SDK produk, Anda dapat berinteraksi langsung dengan project Firebase menggunakan beberapa alat dan antarmuka yang berbeda.
Firebase console
Firebase console menawarkan lingkungan terlengkap untuk mengelola produk, aplikasi, dan setelan level project Firebase.
Panel kiri konsol mencantumkan produk Firebase, yang disusun berdasarkan kategori level teratas. Di bagian atas panel kiri, Anda dapat mengakses setelan project dengan mengklik integrasi, izin akses, dan penagihan.
. Setelan project mencakupBagian tengah konsol menampilkan tombol yang meluncurkan alur kerja penyiapan untuk mendaftarkan berbagai jenis aplikasi. Setelah Anda mulai menggunakan Firebase, area utama konsol akan berubah menjadi dasbor yang menampilkan statistik produk yang Anda gunakan.
Perlu diperhatikan bahwa karena project Firebase juga merupakan project Google Cloud, Anda mungkin mendapati bahwa berbagai tugas atau produk mengharuskan Anda untuk menggunakan Google Cloud console, bukan Firebase console.
Firebase CLI (alat command line)
Firebase juga menawarkan Firebase CLI untuk mengonfigurasi dan mengelola produk Firebase tertentu, seperti Firebase Hosting, Cloud Functions for Firebase, dan Firebase Extensions.
Setelah menginstal CLI, Anda memiliki akses ke perintah firebase
global. Gunakan CLI untuk menautkan direktori aplikasi lokal ke project Firebase, lalu deploy versi baru konten yang dihosting di Firebase atau versi baru fungsi.
Firebase Management REST API
Dengan Firebase Management REST API, Anda dapat mengelola project Firebase secara terprogram. Misalnya, Anda dapat mendaftarkan aplikasi secara terprogram ke project atau mencantumkan aplikasi yang sudah terdaftar (iOS+ | Android | web).
Project ID Firebase
Project Firebase dapat diidentifikasi di backend Firebase dan di berbagai antarmuka developer menggunakan ID yang berbeda, termasuk nama project, nomor project, dan project ID.
Nama project
Saat membuat project, berikan nama untuk project Anda. ID ini adalah nama khusus internal untuk project di Firebase console, Google Cloud console, dan Firebase CLI. Nama project tidak ditampilkan di produk, layanan, atau resource Firebase atau Google Cloud yang dapat dilihat secara publik. Nama tersebut hanya berfungsi untuk memudahkan Anda membedakan berbagai project.
Anda dapat mengedit nama project kapan saja di Project settings pada Firebase console. Nama project ditampilkan di panel atas.
Nomor project
Project Firebase (dan project Google Cloud terkait) memiliki nomor project. Nomor project adalah ID kanonis unik yang ditetapkan Google secara global untuk project. Gunakan ID ini saat mengonfigurasi integrasi dan/atau melakukan panggilan API ke Firebase, Google, atau layanan pihak ketiga.
Anda tidak dapat mengedit nomor project. Jika Anda menghapus suatu project, project ID juga akan terhapus dan tidak akan dapat digunakan lagi oleh project lain.
Project ID
Project Firebase (dan project Google Cloud terkait) memiliki project ID. Project ID adalah ID unik yang ditentukan pengguna untuk project di seluruh Firebase dan Google Cloud. Saat Anda membuat project Firebase, Firebase otomatis menetapkan ID unik ke project tersebut, tetapi Anda dapat mengeditnya selama penyiapan project. ID ini secara umum harus diperlakukan sebagai alias praktis untuk merujuk project.
Objek dan file konfigurasi Firebase
Saat Anda mendaftarkan aplikasi ke project Firebase, Firebase console akan menyediakan file konfigurasi Firebase (aplikasi Apple/Android) atau objek konfigurasi (aplikasi web) yang Anda tambahkan langsung ke direktori aplikasi lokal.
- Untuk aplikasi Apple, tambahkan file konfigurasi
GoogleService-Info.plist
. - Untuk aplikasi Android, tambahkan file konfigurasi
google-services.json
. - Untuk aplikasi web, tambahkan objek konfigurasi Firebase.
Anda dapat memperoleh objek atau file konfigurasi Firebase milik aplikasi kapan saja.
Objek atau file konfigurasi Firebase mengaitkan aplikasi dengan project Firebase tertentu beserta resource-nya (database, bucket penyimpanan, dll.). Konfigurasi ini mencakup "opsi Firebase", yang merupakan parameter yang diperlukan oleh layanan Google dan Firebase untuk berkomunikasi dengan API server Firebase serta mengaitkan data klien dengan project Firebase dan aplikasi Firebase. Berikut adalah "opsi Firebase" minimum yang diperlukan:
Kunci API: string terenkripsi sederhana yang digunakan saat memanggil API tertentu yang tidak perlu mengakses data pengguna pribadi (contoh nilai:
AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
)Project ID: ID unik yang ditentukan pengguna untuk project di seluruh Firebase dan Google Cloud. ID ini dapat muncul di URL atau nama beberapa resource Firebase, tetapi secara umum harus diperlakukan sebagai alias demi kemudahan untuk merujuk project. (contoh nilai:
myapp-project-123
)ID Aplikasi ("AppID"): ID unik untuk aplikasi Firebase di seluruh Firebase dengan format khusus platform:
- Aplikasi Apple Firebase:
GOOGLE_APP_ID
(contoh nilai:1:1234567890:ios:321abc456def7890
)
Ini bukan ID Paket Apple. - Aplikasi Android Firebase:
mobilesdk_app_id
(nilai contoh:1:1234567890:android:321abc456def7890
)
Ini bukan ID aplikasi Android atau nama paket Android. - Aplikasi Web Firebase:
appId
(contoh nilai:1:65211879909:web:3ae38ef1cdcb2e01fe5f0c
)
- Aplikasi Apple Firebase:
Konten file atau objek konfigurasi Firebase dianggap publik, termasuk ID khusus platform aplikasi (ID paket Apple atau nama paket Android) dan nilai khusus project Firebase, seperti Kunci API, project ID, URL Realtime Database, dan nama bucket Cloud Storage. Oleh karena itu, gunakan Firebase Security Rules untuk melindungi data dan file Anda di Realtime Database, Cloud Firestore, dan Cloud Storage.
Untuk project open source, secara umum kami tidak merekomendasikan penyertaan objek atau file konfigurasi Firebase aplikasi dalam kontrol sumber karena, dalam sebagian besar kasus, pengguna harus membuat project Firebase-nya sendiri dan mengarahkan aplikasinya ke resource Firebase mereka sendiri (melalui objek atau file konfigurasi Firebase).
Batas umum untuk project, aplikasi, dan situs Firebase
Berikut ini beberapa batasan umum untuk project, aplikasi, dan situs Firebase:
Jumlah project per akun
- Paket harga Spark — Kuota pembuatan project dibatasi cukup sedikit (biasanya sekitar 5-10).
- Paket harga Blaze — Kuota pembuatan project per akun meningkat secara signifikan selama akun Cloud Billing yang terkait memiliki reputasi baik.
Batas kuota pembuatan project jarang menjadi perhatian sebagian besar developer, tetapi jika diperlukan, Anda dapat meminta penambahan kuota project.
Perlu diperhatikan bahwa penghapusan project secara menyeluruh memerlukan waktu 30 hari, dan memengaruhi hitungan kuota project hingga project sepenuhnya dihapus.
Jumlah aplikasi per project
Firebase membatasi jumlah total Aplikasi Firebase dalam project Firebase sebanyak 30.
Anda harus memastikan bahwa semua Aplikasi Firebase dalam satu project Firebase merupakan varian platform untuk aplikasi yang sama berdasarkan perspektif pengguna akhir. Baca selengkapnya tentang multi-tenancy di dokumen praktik terbaik kami.
Pelajari batas aplikasi per project lebih lanjut di FAQ.
Jumlah situs Hosting per project
Fitur multi-situs Firebase Hosting mendukung maksimal 36 situs per project.
Meluncurkan aplikasi
- Siapkan pemberitahuan anggaran untuk project Anda di Google Cloud console.
- Pantau dasbor Usage and billing di konsol Firebase untuk mendapatkan gambaran keseluruhan penggunaan project Anda di berbagai layanan Firebase.
- Periksa checklist peluncuran Firebase.