ক্লাউড স্টোরেজ ফর ইউনিটি দিয়ে শুরু করুন

Cloud Storage for Firebase আপনাকে ব্যবহারকারী-সৃষ্ট কন্টেন্ট, যেমন ছবি এবং ভিডিও, আপলোড ও শেয়ার করার সুযোগ দেয়, যার মাধ্যমে আপনি আপনার অ্যাপে রিচ মিডিয়া কন্টেন্ট তৈরি করতে পারেন। আপনার ডেটা একটি Google Cloud Storage বাকেটে সংরক্ষিত থাকে — এটি একটি এক্সাবাইট স্কেল অবজেক্ট স্টোরেজ সলিউশন, যাতে রয়েছে উচ্চ প্রাপ্যতা এবং গ্লোবাল রিডানডেন্সি। Cloud Storage for Firebase আপনাকে এই ফাইলগুলো সরাসরি মোবাইল ডিভাইস এবং ওয়েব ব্রাউজার থেকে নিরাপদে আপলোড করার সুবিধা দেয় এবং দুর্বল নেটওয়ার্কও সহজে সামাল দেয়।

শুরু করার আগে

Cloud Storage ব্যবহার করার আগে, আপনাকে নিম্নলিখিত শর্তগুলো পূরণ করতে হবে:

  • আপনার ইউনিটি প্রজেক্টটি রেজিস্টার করুন এবং ফায়ারবেস ব্যবহারের জন্য কনফিগার করুন।

    • আপনার ইউনিটি প্রজেক্টে যদি আগে থেকেই ফায়ারবেস ব্যবহার করা হয়, তাহলে এটি ফায়ারবেসের জন্য ইতোমধ্যেই নিবন্ধিত এবং কনফিগার করা আছে।

    • আপনার যদি কোনো ইউনিটি প্রজেক্ট না থাকে, তাহলে আপনি একটি স্যাম্পল অ্যাপ ডাউনলোড করতে পারেন।

  • আপনার ইউনিটি প্রজেক্টে Firebase Unity এসডিকে (বিশেষত, FirebaseStorage.unitypackage ) যোগ করুন।

মনে রাখবেন যে, আপনার ইউনিটি প্রজেক্টে ফায়ারবেস যোগ করার জন্য Firebase কনসোল এবং আপনার খোলা ইউনিটি প্রজেক্ট উভয় স্থানেই কাজ করতে হয় (উদাহরণস্বরূপ, আপনাকে কনসোল থেকে ফায়ারবেস কনফিগারেশন ফাইল ডাউনলোড করতে হবে, তারপর সেগুলোকে আপনার ইউনিটি প্রজেক্টে স্থানান্তর করতে হবে)।

এছাড়াও, নিশ্চিত করুন যে আপনার Firebase প্রজেক্টটি পে-অ্যাজ-ইউ-গো ব্লেজ প্রাইসিং প্ল্যানে রয়েছে, যা অক্টোবর ২০২৪ থেকে কার্যকর হওয়া একটি আবশ্যিক শর্ত (আমাদের প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী দেখুন)। আপনি যদি Firebase এবং Google Cloud-এ নতুন হন, তবে আপনি $300 ক্রেডিটের জন্য যোগ্য কিনা তা যাচাই করে দেখুন।

একটি ডিফল্ট Cloud Storage বাকেট তৈরি করুন

  1. Firebase কনসোলের নেভিগেশন প্যান থেকে Storage নির্বাচন করুন।

    আপনার প্রজেক্টটি যদি এখনও ব্লেজের পে-অ্যাজ-ইউ-গো প্রাইসিং প্ল্যানে অন্তর্ভুক্ত না থাকে, তাহলে আপনাকে প্রজেক্টটি আপগ্রেড করার জন্য অনুরোধ করা হবে।

  2. শুরু করতে ক্লিক করুন।

  3. আপনার ডিফল্ট বাকেটের জন্য একটি অবস্থান নির্বাচন করুন।

  4. আপনার ডিফল্ট বাকেটের জন্য Firebase Security Rules কনফিগার করুন। ডেভেলপমেন্টের সময়, পাবলিক অ্যাক্সেসের জন্য আপনার নিয়মগুলো সেট আপ করার কথা বিবেচনা করুন।

  5. সম্পন্ন ক্লিক করুন।

আপনি এখন Firebase কনসোলের Cloud Storage ফাইলস ট্যাবে বাকেটটি দেখতে পারবেন। আপনার ডিফল্ট বাকেট নামের ফরম্যাটটি হলো PROJECT_ID .firebasestorage.app .

সর্বসাধারণের প্রবেশাধিকার স্থাপন করুন

Cloud Storage for Firebase একটি ডিক্লারেটিভ রুলস ল্যাঙ্গুয়েজ প্রদান করে, যা আপনাকে নির্ধারণ করতে দেয় যে আপনার ডেটা কীভাবে সাজানো হবে, কীভাবে ইনডেক্স করা হবে এবং কখন আপনার ডেটা থেকে পড়া ও লেখা যাবে। ডিফল্টরূপে, Cloud Storage পড়া ও লেখার অ্যাক্সেস সীমাবদ্ধ থাকে, ফলে শুধুমাত্র অথেনটিকেটেড ব্যবহারকারীরাই ডেটা পড়তে বা লিখতে পারেন। Authentication সেট আপ না করেই কাজ শুরু করতে, আপনি পাবলিক অ্যাক্সেসের জন্য আপনার নিয়মগুলো কনফিগার করতে পারেন।

এর ফলে Cloud Storage যে কারও জন্য উন্মুক্ত হয়ে যায়, এমনকি যারা আপনার অ্যাপ ব্যবহার করছেন না তাদের জন্যও। তাই, অথেনটিকেশন সেট আপ করার সময় আপনার Cloud Storage পুনরায় সীমাবদ্ধ করতে ভুলবেন না।

FirebaseStorage ক্লাস অ্যাক্সেস করুন

Firebase.Storage.FirebaseStorage হলো Cloud Storage ইউনিটি এসডিকে-এর এন্ট্রি পয়েন্ট।

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

আপনি Cloud Storage ব্যবহার শুরু করার জন্য প্রস্তুত!

পরবর্তী পদক্ষেপ? Cloud Storage রেফারেন্স তৈরি করার পদ্ধতি জেনে নিন।

উন্নত সেটআপ

কিছু ব্যবহারের ক্ষেত্র রয়েছে যেগুলোর জন্য অতিরিক্ত সেটআপের প্রয়োজন হয়:

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

দ্বিতীয় ব্যবহারটি তখন সহায়ক হয়, যখন আপনার কাছে বিভিন্ন অ্যাক্সেস প্যাটার্নের ডেটা থাকে। উদাহরণস্বরূপ: আপনি একটি মাল্টি-রিজিওনাল বা রিজিওনাল বাকেট সেট আপ করতে পারেন যা ছবি বা অন্যান্য ঘন ঘন অ্যাক্সেস করা কন্টেন্ট সংরক্ষণ করে, এবং একটি নিয়ারলাইন বা কোল্ডলাইন বাকেট সেট আপ করতে পারেন যা ব্যবহারকারীর ব্যাকআপ বা অন্যান্য কদাচিৎ অ্যাক্সেস করা কন্টেন্ট সংরক্ষণ করে।

এই উভয় ব্যবহারের ক্ষেত্রেই, আপনার একাধিক Cloud Storage বাকেট ব্যবহার করার প্রয়োজন হবে।

তৃতীয় ব্যবহারটি তখন কাজে আসে যখন আপনি গুগল ড্রাইভের মতো এমন কোনো অ্যাপ তৈরি করছেন, যা ব্যবহারকারীদের একাধিক লগ-ইন করা অ্যাকাউন্ট (যেমন, একটি ব্যক্তিগত অ্যাকাউন্ট এবং একটি কর্মক্ষেত্রের অ্যাকাউন্ট) রাখার সুযোগ দেয়। প্রতিটি অতিরিক্ত অ্যাকাউন্ট প্রমাণীকরণের জন্য আপনি একটি কাস্টম ফায়ারবেস অ্যাপ ইনস্ট্যান্স ব্যবহার করতে পারেন।

একাধিক Cloud Storage বাকেট ব্যবহার করুন

আপনি যদি উপরে দেওয়া ডিফল্ট বাকেটটি ছাড়া অন্য কোনো Cloud Storage বাকেট ব্যবহার করতে চান, অথবা একটি অ্যাপে একাধিক Cloud Storage বাকেট ব্যবহার করতে চান, তাহলে আপনি FirebaseStorage এর এমন একটি ইনস্ট্যান্স তৈরি করতে পারেন যা আপনার কাস্টম বাকেটটিকে রেফারেন্স করবে:

// Get a non-default Storage bucket
var storage = FirebaseStorage.GetInstance("gs://my-custom-bucket");

আমদানিকৃত বাকেটগুলির সাথে কাজ করা

ফায়ারবেসে বিদ্যমান কোনো Cloud Storage বাকেট ইম্পোর্ট করার সময়, আপনাকে Google Cloud এসডিকে -তে অন্তর্ভুক্ত gsutil টুলটি ব্যবহার করে ফায়ারবেসকে এই ফাইলগুলি অ্যাক্সেস করার অনুমতি দিতে হবে।

gsutil -m acl ch -r -u service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://BUCKET_NAME

ফায়ারবেস প্রজেক্টের পরিচিতিতে বর্ণিত পদ্ধতি অনুসরণ করে আপনি আপনার প্রজেক্ট নম্বরটি খুঁজে নিতে পারেন।

এটি নতুন তৈরি করা বাকেটগুলিকে প্রভাবিত করে না, কারণ সেগুলিতে ডিফল্ট অ্যাক্সেস কন্ট্রোল ফায়ারবেসকে অনুমতি দেওয়ার জন্য সেট করা থাকে। এটি একটি অস্থায়ী ব্যবস্থা, এবং ভবিষ্যতে এটি স্বয়ংক্রিয়ভাবে কার্যকর করা হবে।

একটি কাস্টম ফায়ারবেস অ্যাপ ব্যবহার করুন

আপনি যদি একটি কাস্টম FirebaseApp ব্যবহার করে আরও জটিল কোনো অ্যাপ তৈরি করেন, তাহলে আপনি সেই অ্যাপটি দিয়ে ইনিশিয়ালাইজ করা FirebaseStorage এর একটি ইনস্ট্যান্স তৈরি করতে পারেন:

// Get the default bucket from a custom FirebaseApp
FirebaseStorage storage = FirebaseStorage.GetInstance(customApp);

// Get a non-default bucket from a custom FirebaseApp
FirebaseStorage storageCustom = FirebaseStorage.GetInstance(customApp, "gs://my-custom-bucket");

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