Dengan Cloud Storage for Firebase, Anda dapat mengupload dan membagikan konten buatan pengguna, seperti gambar dan video, sehingga Anda dapat membuat konten multimedia ke dalam aplikasi. Data Anda disimpan dalam bucket Google Cloud Storage, yakni solusi penyimpanan objek berskala exabyte dengan ketersediaan tinggi dan redundansi global. Cloud Storage for Firebase dapat digunakan untuk mengupload file tersebut secara langsung dari perangkat seluler dan browser web dengan aman, sehingga Anda dapat menangani jaringan yang tidak stabil dengan mudah.
Prasyarat
- Instal Firebase SDK.
- Tambahkan aplikasi Anda ke project Firebase di Firebase console.
Membuat bucket Cloud Storage default
Dari panel navigasi Firebase console, pilih Storage, lalu klik Mulai.
Tinjau pesan tentang cara mengamankan data Cloud Storage menggunakan aturan keamanan. Selama pengembangan, pertimbangkan untuk menyiapkan aturan Anda untuk akses publik.
Pilih lokasi untuk bucket Cloud Storage default.
Setelan lokasi ini adalah lokasi resource Google Cloud Platform (GCP) default project Anda. Perlu diperhatikan bahwa lokasi ini akan digunakan untuk layanan GCP di project Anda yang memerlukan setelan lokasi, khususnya, database Cloud Firestore dan aplikasi App Engine (yang diperlukan jika Anda menggunakan Cloud Scheduler).
Jika tidak dapat memilih lokasi, project Anda sudah memiliki lokasi resource GCP default. Lokasi tersebut ditetapkan selama pembuatan project atau ketika menyiapkan layanan lain yang memerlukan setelan lokasi.
Jika menggunakan paket Blaze, Anda dapat membuat beberapa bucket, masing-masing dengan lokasinya sendiri.
Klik Selesai.
Menyiapkan akses publik
Cloud Storage for Firebase menyediakan bahasa aturan deklaratif, sehingga Anda dapat menentukan metode strukturisasi data, penyusunan indeks, dan waktu data tersebut dapat dibaca dan ditulis. Secara default, akses baca dan tulis pada Cloud Storage dibatasi, sehingga hanya pengguna terautentikasi yang dapat membaca dan menulis data. Untuk memulai tanpa menyiapkan Authentication, Anda dapat mengonfigurasi aturan untuk akses publik.
Tindakan ini membuat Cloud Storage terbuka untuk siapa saja, bahkan orang yang tidak menggunakan aplikasi Anda. Oleh karena itu, pastikan untuk membatasi Cloud Storage kembali jika Anda menyiapkan autentifikasi.
Menambahkan Cloud Storage ke aplikasi
Tambahkan dependensi untuk Cloud Storage ke
Podfile
project Anda:pod 'Firebase/Storage'
Jalankan
pod install
, lalu buka file.xcworkspace
yang dibuat.
Menyiapkan Cloud Storage
Anda harus menginisialisasi Firebase sebelum ada referensi Firebase yang dibuat atau digunakan. Jika hal ini telah dilakukan pada fitur Firebase lainnya, Anda dapat melewati langkah ini.
- Impor modul Firebase di
UIApplicationDelegate
Anda:Swift
import Firebase
Objective-C
@import Firebase;
- Konfigurasikan instance bersama
FirebaseApp
, biasanya ada dalam metodeapplication:didFinishLaunchingWithOptions:
aplikasi Anda:Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
Objective-C
// Use Firebase library to configure APIs [FIRApp configure];
-
Dapatkan referensi ke layanan Cloud Storage, menggunakan Aplikasi Firebase default:
Swift
let storage = Storage.storage()
Objective-C
FIRStorage *storage = [FIRStorage storage];
Anda siap untuk mulai menggunakan Cloud Storage.
Pertama, mari pelajari cara membuat referensi Cloud Storage.
Penyiapan lanjutan
Ada beberapa kasus penggunaan yang memerlukan penyiapan tambahan:
- Menggunakan bucket Cloud Storage di beberapa region geografis
- Menggunakan bucket Cloud Storage di berbagai kelas penyimpanan
- Menggunakan bucket Cloud Storage dengan beberapa pengguna terautentikasi dalam aplikasi yang sama
Kasus penggunaan pertama sangat cocok jika Anda memiliki pengguna di seluruh dunia dan ingin menyimpan datanya di dekat mereka. Misalnya, Anda dapat membuat bucket di Amerika Serikat, Eropa, dan Asia untuk menyimpan data bagi pengguna di region tersebut guna mengurangi latensi.
Kasus penggunaan kedua sangat membantu jika Anda memiliki data dengan berbagai pola akses. Misalnya: Anda dapat membuat bucket multi-regional atau regional yang menyimpan gambar atau konten lain yang sering diakses, dan bucket nearline atau coldline yang menyimpan cadangan pengguna atau konten lainnya yang jarang diakses.
Dalam salah satu kasus penggunaan ini, sebaiknya gunakan beberapa bucket Cloud Storage.
Kasus penggunaan ketiga berguna jika Anda sedang mem-build aplikasi yang memungkinkan pengguna untuk memiliki beberapa akun login (misalnya, akun pribadi dan akun kerja), seperti Google Drive. Anda dapat menggunakan instance Aplikasi Firebase kustom untuk mengautentikasi setiap akun tambahan.
Menggunakan beberapa bucket Cloud Storage
Jika Anda ingin menggunakan bucket Cloud Storage selain bucket default yang disediakan di atas, atau ingin menggunakan beberapa bucket Cloud Storage di satu aplikasi, Anda dapat membuat instance
FIRStorage
yang mereferensikan bucket khusus Anda:
Swift
// Get a non-default Cloud Storage bucket storage = Storage.storage(url:"gs://my-custom-bucket")
Objective-C
// Get a non-default Cloud Storage bucket FIRStorage storage = [FIRStorage storageWithURL:@"gs://my-custom-bucket"];
Bekerja dengan bucket hasil impor
Saat mengimpor bucket Cloud Storage yang sudah ada ke Firebase, Anda harus memberikan izin kepada Firebase untuk mengakses file ini menggunakan alat 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 project seperti yang dijelaskan dalam pengantar project Firebase.
Hal ini tidak akan memengaruhi bucket yang baru dibuat karena bucket ini memiliki kontrol akses default yang ditetapkan untuk mengizinkan Firebase. Ini adalah tindakan sementara dan akan dilakukan secara otomatis di masa mendatang.
Menggunakan Aplikasi Firebase kustom
Jika Anda membuat aplikasi yang lebih rumit menggunakan FirebaseApp
kustom, Anda dapat membuat
instance Storage
yang diinisialisasi dengan aplikasi tersebut:
Swift
// Get the default bucket from a custom FirebaseApp storage = Storage.storage(app:customApp) // Get a non-default bucket from a custom FirebaseApp storage = Storage.storage(app:customApp, url:"gs://my-custom-bucket")
Objective-C
// Get the default bucket from a custom FIRApp FIRStorage storage = [FIRStorage storageForApp:customApp]; // Get a non-default bucket from a custom FIRApp FIRStorage storage = [FIRStorage storageForApp:customApp withURL:@"gs://my-custom-bucket"];
Langkah berikutnya
Bersiap meluncurkan aplikasi Anda:
- Siapkan pemberitahuan anggaran untuk project Anda di Google Cloud Console.
- Pantau dasbor Penggunaan dan penagihan di Firebase console untuk mendapatkan gambaran keseluruhan penggunaan project Anda di berbagai layanan Firebase. Anda juga dapat membuka dasbor Penggunaan Cloud Storage untuk mengetahui informasi penggunaan yang lebih mendetail.
- Periksa checklist peluncuran Firebase.