Cloud Storage for Firebase memungkinkan Anda mengunggah dan berbagi konten buatan pengguna, seperti gambar dan video, yang memungkinkan Anda membuat konten multimedia ke dalam aplikasi Anda. Data Anda disimpan di keranjang Google Cloud Storage — solusi penyimpanan objek berskala exabyte dengan ketersediaan tinggi dan redundansi global. Cloud Storage for Firebase memungkinkan Anda mengunggah file ini dengan aman langsung dari perangkat seluler dan browser web, menangani jaringan yang bermasalah dengan mudah.
Prasyarat
Jika Anda belum melakukannya, tambahkan Firebase ke proyek Android Anda .
Buat bucket Cloud Storage default
Dari panel navigasi konsol Firebase , pilih Storage , lalu klik Mulai .
Tinjau pesan tentang mengamankan data Cloud Storage Anda menggunakan aturan keamanan. Selama pengembangan, pertimbangkan untuk menyiapkan aturan Anda untuk akses publik .
Pilih lokasi untuk bucket Cloud Storage default Anda.
Setelan lokasi ini adalah lokasi resource Google Cloud Platform (GCP) default project Anda. Perhatikan bahwa lokasi ini akan digunakan untuk layanan GCP di project Anda yang memerlukan setelan lokasi, khususnya database Cloud Firestore dan aplikasi App Engine Anda (yang diperlukan jika Anda menggunakan Cloud Scheduler).
Jika Anda tidak dapat memilih lokasi, project Anda sudah memiliki lokasi resource GCP default. Itu disetel baik selama pembuatan proyek atau saat menyiapkan layanan lain yang memerlukan pengaturan lokasi.
Jika menggunakan paket Blaze, Anda dapat membuat beberapa keranjang , masing-masing dengan lokasinya sendiri.
Klik Selesai .
Siapkan akses publik
Cloud Storage for Firebase menyediakan bahasa aturan deklaratif yang memungkinkan Anda menentukan struktur data, cara pengindeksan, dan kapan data dapat dibaca dan ditulis. Secara default, akses baca dan tulis ke Cloud Storage dibatasi sehingga hanya pengguna yang diautentikasi yang dapat membaca atau menulis data. Untuk memulai tanpa menyetel Otentikasi , Anda dapat mengonfigurasi aturan untuk akses publik .
Hal ini membuat Cloud Storage terbuka untuk siapa saja, bahkan orang yang tidak menggunakan aplikasi Anda, jadi pastikan untuk membatasi Cloud Storage Anda lagi saat menyiapkan autentikasi.
Tambahkan Cloud Storage SDK ke aplikasi Anda
Dalam file Gradle modul (level aplikasi) Anda (biasanya<project>/<app-module>/build.gradle
), tambahkan dependensi untuk library Cloud Storage Android. Kami merekomendasikan penggunaan Firebase Android BoM untuk mengontrol pembuatan versi library. Kotlin+KTX
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:31.2.0') // Add the dependency for the Cloud Storage library // When using the BoM, you don't specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-storage-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 dependency for the Cloud Storage library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-storage-ktx:20.1.0' }
Java
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:31.2.0') // Add the dependency for the Cloud Storage library // When using the BoM, you don't specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-storage' }
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 dependency for the Cloud Storage library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-storage:20.1.0' }
Siapkan Cloud Storage
Langkah pertama dalam mengakses bucket Cloud Storage Anda adalah membuat instance FirebaseStorage
:
Kotlin+KTX
storage = Firebase.storage
Java
FirebaseStorage storage = FirebaseStorage.getInstance();
Anda siap untuk mulai menggunakan Cloud Storage!
Pertama, mari pelajari cara membuat referensi Cloud Storage .
Konfigurasi lanjutan
Ada beberapa kasus penggunaan yang memerlukan penyiapan tambahan:
- Menggunakan bucket Cloud Storage di beberapa wilayah geografis
- Menggunakan bucket Cloud Storage di kelas penyimpanan yang berbeda
- Menggunakan bucket Cloud Storage dengan beberapa pengguna yang diautentikasi dalam aplikasi yang sama
Kasus penggunaan pertama sempurna jika Anda memiliki pengguna di seluruh dunia, dan ingin menyimpan data mereka di dekat mereka. Misalnya, Anda dapat membuat keranjang di AS, Eropa, dan Asia untuk menyimpan data bagi pengguna di wilayah tersebut guna mengurangi latensi.
Kasus penggunaan kedua berguna jika Anda memiliki data dengan pola akses yang berbeda. Misalnya: Anda dapat menyiapkan keranjang multiregional atau regional yang menyimpan gambar atau konten lain yang sering diakses, dan keranjang nearline atau coldline yang menyimpan cadangan pengguna atau konten lain yang jarang diakses.
Dalam salah satu kasus penggunaan ini, Anda sebaiknya menggunakan beberapa keranjang Cloud Storage .
Kasus penggunaan ketiga berguna jika Anda membuat aplikasi, seperti Google Drive, yang memungkinkan pengguna memiliki beberapa akun masuk (misalnya, akun pribadi dan akun kerja). Anda dapat menggunakan instance Aplikasi Firebase kustom untuk mengautentikasi setiap akun tambahan.
Gunakan beberapa bucket Cloud Storage
Jika Anda ingin menggunakan bucket Cloud Storage selain yang disediakan di atas, atau menggunakan beberapa bucket Cloud Storage dalam satu aplikasi, Anda dapat membuat instance FirebaseStorage
yang mereferensikan bucket khusus Anda:
Kotlin+KTX
// Get a non-default Storage bucket val storage = Firebase.storage("gs://my-custom-bucket")
Java
// Get a non-default Storage bucket FirebaseStorage storage = FirebaseStorage.getInstance("gs://my-custom-bucket");
Bekerja dengan ember yang diimpor
Saat mengimpor bucket Cloud Storage yang ada ke Firebase, Anda harus memberi Firebase kemampuan untuk mengakses file ini menggunakan fitur gsutil
, yang disertakan dalam Google Cloud SDK :
gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>
Anda dapat menemukan nomor proyek Anda seperti yang dijelaskan dalam pengantar proyek Firebase .
Ini tidak memengaruhi bucket yang baru dibuat, karena bucket tersebut memiliki kontrol akses default yang disetel untuk mengizinkan Firebase. Ini adalah tindakan sementara, dan akan dilakukan secara otomatis di masa mendatang.
Gunakan Aplikasi Firebase khusus
Jika Anda membuat aplikasi yang lebih rumit menggunakan FirebaseApp
khusus, Anda dapat membuat instance FirebaseStorage
yang diinisialisasi dengan aplikasi tersebut:
Kotlin+KTX
// Get the default bucket from a custom FirebaseApp val storage = Firebase.storage(customApp!!) // Get a non-default bucket from a custom FirebaseApp val customStorage = Firebase.storage(customApp, "gs://my-custom-bucket")
Java
// Get the default bucket from a custom FirebaseApp FirebaseStorage storage = FirebaseStorage.getInstance(customApp); // Get a non-default bucket from a custom FirebaseApp FirebaseStorage customStorage = FirebaseStorage.getInstance(customApp, "gs://my-custom-bucket");
Langkah selanjutnya
Bersiaplah untuk meluncurkan aplikasi Anda:
Aktifkan Pemeriksaan Aplikasi untuk membantu memastikan bahwa hanya aplikasi Anda yang dapat mengakses keranjang penyimpanan Anda.
Siapkan peringatan anggaran untuk proyek Anda di Google Cloud Console.
Pantau dasbor Penggunaan dan penagihan di Firebase console untuk mendapatkan gambaran keseluruhan tentang penggunaan proyek Anda di beberapa layanan Firebase. Anda juga dapat mengunjungi dasbor Penggunaan Cloud Storage untuk informasi penggunaan yang lebih mendetail.
Tinjau daftar periksa peluncuran Firebase .