Ikuti semua informasi yang diumumkan di Firebase Summit, dan pelajari bagaimana Firebase dapat membantu Anda mempercepat pengembangan aplikasi dan menjalankan aplikasi dengan percaya diri. Pelajari Lebih Lanjut

Buat referensi Cloud Storage dengan Cloud Storage for Unity

Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

File Anda disimpan di bucket Cloud Storage . File dalam bucket ini disajikan dalam struktur hierarkis, seperti sistem file di hard disk lokal Anda, atau data di Firebase Realtime Database. Dengan membuat referensi ke file, aplikasi Anda mendapatkan akses ke sana. Referensi ini kemudian dapat digunakan untuk mengunggah atau mengunduh data, mendapatkan atau memperbarui metadata, atau menghapus file. Referensi dapat menunjuk ke file tertentu atau ke node tingkat yang lebih tinggi dalam hierarki.

Jika Anda telah menggunakan Firebase Realtime Database , jalur ini akan tampak sangat familiar bagi Anda. Namun, data file Anda disimpan di Cloud Storage, bukan di Realtime Database.

Buat Referensi

Buat referensi untuk mengunggah, mengunduh, atau menghapus file, atau untuk mendapatkan atau memperbarui metadatanya. Referensi dapat dianggap sebagai penunjuk ke file di cloud. Referensinya ringan, sehingga Anda dapat membuat sebanyak yang Anda butuhkan. Mereka juga dapat digunakan kembali untuk beberapa operasi.

Referensi dibuat dari layanan Firebase.Storage.FirebaseStorage di aplikasi Firebase Anda dengan memanggil metode GetReferenceFromUrl() dan meneruskan URL berbentuk gs://<your-cloud-storage-bucket> . Anda dapat menemukan URL ini di bagian Storage pada Firebase console .

// Get a reference to the storage service, using the default Firebase App
FirebaseStorage storage = FirebaseStorage.DefaultInstance;

// Create a storage reference from our storage service
StorageReference storageRef =
    storage.GetReferenceFromUrl("gs://<your-cloud-storage-bucket>");

Anda dapat membuat referensi ke lokasi yang lebih rendah di pohon, misalnya 'images/space.jpg' , dengan menggunakan metode child pada referensi yang ada.

// Create a child reference
// imagesRef now points to "images"
StorageReference imagesRef = storageRef.Child("images");

// Child references can also take paths delimited by '/' such as:
// "images/space.jpg".
StorageReference spaceRef = imagesRef.Child("space.jpg");
// spaceRef now points to "images/space.jpg"
// imagesRef still points to "images"

// This is equivalent to creating the full referenced
StorageReference spaceRefFull = storage.GetReferenceFromUrl(
    "gs://<your-cloud-storage-bucket>/images/space.jpg");

Anda juga dapat menggunakan metode Parent dan Root untuk menavigasi ke atas dalam hierarki file kami. Parent menavigasi satu tingkat, sementara Root menavigasi sampai ke atas.

// Parent allows us to move to the parent of a reference
// imagesRef now points to 'images'
StorageReference imagesRef = spaceRef.Parent;

// Root allows us to move all the way back to the top of our bucket
// rootRef now points to the root
StorageReference rootRef = spaceRef.Root;

Child , Parent , dan Root dapat dirangkai bersama beberapa kali, karena masing-masing mengembalikan referensi. Pengecualian adalah Parent of Root , yang merupakan StorageReference yang tidak valid .

// References can be chained together multiple times
// earthRef points to "images/earth.jpg"
StorageReference earthRef =
    spaceRef.Parent.Child("earth.jpg");

// nullRef is null since the parent of root is an invalid StorageReference
StorageReference nullRef = spaceRef.Root.Parent;

Metode Referensi

Anda dapat memeriksa referensi untuk lebih memahami file yang mereka tunjuk menggunakan properti Path , Name , dan Bucket . Properti ini mendapatkan path lengkap, nama, dan bucket file.

// Reference's path is: "images/space.jpg"
// This is analogous to a file path on disk
string path = spaceRef.Path;

// Reference's name is the last segment of the full path: "space.jpg"
// This is analogous to the file name
string name = spaceRef.Name;

// Reference's bucket is the name of the storage bucket where files are stored
string bucket = spaceRef.Bucket;

Batasan Referensi

Jalur dan nama referensi dapat berisi urutan karakter Unicode yang valid, tetapi batasan tertentu diberlakukan termasuk:

  1. Panjang total reference.Path . Jalur harus antara 1 dan 1024 byte saat dikodekan UTF-8.
  2. Tidak ada karakter Pengembalian Kereta atau Umpan Baris.
  3. Hindari penggunaan # , [ , ] , * , atau ? , karena ini tidak berfungsi dengan baik dengan alat lain seperti Firebase Realtime Database atau gsutil .

Contoh Lengkap

FirebaseStorage storage = FirebaseStorage.DefaultInstance;

// Points to the root reference
StorageReference storageRef =
    storage.GetReferenceFromUrl("gs://<your-bucket-name>");

// Points to "images"
StorageReference imagesRef = storageRef.Child("images");

// Points to "images/space.jpg"
// Note that you can use variables to create child values
string filename = "space.jpg";
StorageReference spaceRef = imagesRef.Child(filename);

// File path is "images/space.jpg"
string path = spaceRef.Path;

// File name is "space.jpg"
string name = spaceRef.Name;

// Points to "images"
StorageReference imagesRef = spaceRef.Parent;

Langkah selanjutnya

Selanjutnya, mari kita pelajari cara mengunggah file ke Cloud Storage.