Catch up on highlights from Firebase at Google I/O 2023. Learn more

ইউনিটির জন্য ক্লাউড স্টোরেজ সহ ফাইল মেটাডেটা ব্যবহার করুন

ক্লাউড স্টোরেজ রেফারেন্সে একটি ফাইল আপলোড করার পরে, আপনি ফাইল মেটাডেটা পেতে এবং আপডেট করতে পারেন, উদাহরণস্বরূপ বিষয়বস্তুর প্রকার আপডেট করতে। ফাইলগুলি অতিরিক্ত ফাইল মেটাডেটা সহ কাস্টম কী/মান জোড়া সঞ্চয় করতে পারে।

ফাইল মেটাডেটা পান

ফাইলের মেটাডেটাতে ContentDisposition এবং CreationTimeMillis এর মত কিছু কম সাধারণ বৈশিষ্ট্য ছাড়াও Name , SizeBytes , এবং ContentType (প্রায়শই MIME প্রকার হিসাবে উল্লেখ করা হয়) এর মতো সাধারণ বৈশিষ্ট্য রয়েছে। এই মেটাডেটা 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
    }
});

ফাইল মেটাডেটা আপডেট করুন

UpdateMetadataAsync পদ্ধতি ব্যবহার করে ফাইল আপলোড সম্পূর্ণ হওয়ার পরে আপনি যে কোনো সময় ফাইল মেটাডেটা আপডেট করতে পারেন যা একটি MetadataChange অবজেক্ট নেয়। কোন বৈশিষ্ট্যগুলি আপডেট করা যেতে পারে সে সম্পর্কে আরও তথ্যের জন্য সম্পূর্ণ তালিকাটি পড়ুন। শুধুমাত্র মেটাডেটাতে উল্লিখিত বৈশিষ্ট্যগুলি আপডেট করা হয়েছে, অন্য সবগুলি অপরিবর্তিত রাখা হয়েছে৷

// 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;
    }
});

আপনি খালি স্ট্রিং পাস করে লিখনযোগ্য মেটাডেটা বৈশিষ্ট্য মুছে ফেলতে পারেন:

// 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
    }
});

হ্যান্ডেল ত্রুটি

মেটাডেটা পাওয়ার বা আপডেট করার সময় ত্রুটি ঘটতে পারে এমন অনেকগুলি কারণ রয়েছে, যার মধ্যে ফাইলটি বিদ্যমান নেই বা ব্যবহারকারীর পছন্দসই ফাইল অ্যাক্সেস করার অনুমতি নেই। ত্রুটিগুলি সম্পর্কে আরও তথ্য ডক্সের হ্যান্ডেল ত্রুটি বিভাগে পাওয়া যাবে৷

কাস্টম মেটাডেটা

আপনি একটি Dictionary<string, string> হিসাবে কাস্টম মেটাডেটা নির্দিষ্ট করতে পারেন।

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

// UpdateMetadataAsync

আপনি কাস্টম মেটাডেটাতে প্রতিটি ফাইলের জন্য অ্যাপ-নির্দিষ্ট ডেটা সঞ্চয় করতে পারেন, তবে আমরা এই ধরনের ডেটা সঞ্চয় এবং সিঙ্ক্রোনাইজ করার জন্য একটি ডাটাবেস (যেমন ফায়ারবেস রিয়েলটাইম ডেটাবেস ) ব্যবহার করার পরামর্শ দিই।

ফাইল মেটাডেটা বৈশিষ্ট্য

একটি ফাইলে মেটাডেটা বৈশিষ্ট্যগুলির একটি সম্পূর্ণ তালিকা নীচে উপলব্ধ:

সম্পত্তি টাইপ মেটাডেটা চেঞ্জে পরিবর্তনযোগ্য
Bucket string না
Generation string না
MetadataGeneration string না
Path string না
Name string না
SizeBytes long না
CreationTimeMillis long না
UpdatedTimeMillis long না
CacheControl string হ্যাঁ
ContentDisposition string হ্যাঁ
ContentEncoding string হ্যাঁ
ContentLanguage string হ্যাঁ
ContentType string হ্যাঁ
DownloadUrl Uri না
DownloadUrls IList<Uri> না
CustomMetadataKeys IEnumerable<string> হ্যাঁ

পরবর্তী পদক্ষেপ

ফাইলগুলি আপলোড করা, ডাউনলোড করা এবং আপডেট করা গুরুত্বপূর্ণ, তবে সেগুলি সরাতে সক্ষম হচ্ছে৷ আসুন জেনে নিই ক্লাউড স্টোরেজ থেকে ফাইল মুছে ফেলার উপায়।