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

Gunakan metadata file dengan Cloud Storage untuk Unity

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

Setelah mengupload file ke referensi Cloud Storage, Anda juga bisa mendapatkan dan mengupdate metadata file, misalnya untuk mengupdate jenis konten. File juga dapat menyimpan pasangan kunci/nilai khusus dengan metadata file tambahan.

Dapatkan File Metadata

Metadata file berisi properti umum seperti Name , SizeBytes , dan ContentType (sering disebut sebagai tipe MIME) selain beberapa yang kurang umum seperti ContentDisposition dan CreationTimeMillis . Metadata ini dapat diambil dari referensi Cloud Storage menggunakan metode GetMetadataAsync .

// Create reference to the file whose metadata we want to retrieve
StorageReference forestRef =
    storageRef.Child("images/forest.jpg");

// Get metadata properties
forestRef.GetMetadataAsync().ContinueWithOnMainThread(task => {
    if (!task.IsFaulted && !task.IsCanceled) {
        StorageMetadata meta = task.Result;
        // do stuff with meta
    }
});

Perbarui File Metadata

Anda dapat memperbarui metadata file kapan pun setelah pengunggahan file selesai menggunakan metode UpdateMetadataAsync yang menggunakan objek MetadataChange . Lihat daftar lengkap untuk informasi lebih lanjut tentang properti apa yang dapat diperbarui. Hanya properti yang ditentukan dalam metadata yang diperbarui, yang lainnya tidak diubah.

// Create reference to the file whose metadata we want to change
StorageReference forestRef = storageRef.Child("images/forest.jpg");

// Create file metadata to update
var newMetadata = new MetadataChange();
newMetadata.CacheControl = "public,max-age=300";
newMetadata.ContentType = "image/jpeg";

// Update metadata properties
forestRef.UpdateMetadataAsync(newMetadata).ContinueWithOnMainThread(task => {
    if (!task.IsFaulted && !task.IsCanceled) {
        // access the updated meta data
        StorageMetadata meta = task.Result;
    }
});

Anda dapat menghapus properti metadata yang dapat ditulisi dengan meneruskan string kosong:

// Create file metadata to update
var newMetadata = new MetadataChange();
newMetadata.ContentType = "";

// Update metadata properties
forestRef.UpdateMetadataAsync(newMetadata).ContinueWithOnMainThread(task => {
    if (!task.IsFaulted && !task.IsCanceled) {
        StorageMetadata meta = task.Result;
        // meta.ContentType should be an empty string now
    }
});

Menangani Kesalahan

Ada sejumlah alasan mengapa kesalahan dapat terjadi saat mendapatkan atau memperbarui metadata, termasuk file tidak ada, atau pengguna tidak memiliki izin untuk mengakses file yang diinginkan. Informasi lebih lanjut tentang kesalahan dapat ditemukan di bagian Penanganan Kesalahan pada dokumen.

Metadata Kustom

Anda dapat menentukan metadata khusus sebagai Dictionary<string, string> .

var newMetadata = new MetadataChange {
    CustomMetadata = new Dictionary<string, string> {
        {"location", "Yosemite, CA, USA"},
        {"activity", "Hiking"}
    }
};

// UpdateMetadataAsync

Anda dapat menyimpan data khusus aplikasi untuk setiap file dalam metadata khusus, tetapi kami sangat menyarankan penggunaan database (seperti Firebase Realtime Database ) untuk menyimpan dan menyinkronkan jenis data ini.

Properti Metadata Berkas

Daftar lengkap properti metadata pada file tersedia di bawah ini:

Properti Jenis Dapat dimodifikasi di MetadataChange
Bucket string TIDAK
Generation string TIDAK
MetadataGeneration string TIDAK
Path string TIDAK
Name string TIDAK
SizeBytes long TIDAK
CreationTimeMillis long TIDAK
UpdatedTimeMillis long TIDAK
CacheControl string YA
ContentDisposition string YA
ContentEncoding string YA
ContentLanguage string YA
ContentType string YA
DownloadUrl Uri TIDAK
DownloadUrls IList<Uri> TIDAK
CustomMetadataKeys IEnumerable<string> YA

Langkah selanjutnya

Mengunggah, mengunduh, dan memperbarui file itu penting, tetapi begitu juga dengan menghapusnya. Mari pelajari cara menghapus file dari Cloud Storage.