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

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

পূর্বশর্ত

যদি আপনি ইতিমধ্যেই না করে থাকেন, তাহলে আপনার Android প্রকল্পে Firebase যোগ করুন

একটি ডিফল্ট ক্লাউড স্টোরেজ বালতি তৈরি করুন

  1. Firebase কনসোলের নেভিগেশন ফলক থেকে, স্টোরেজ নির্বাচন করুন, তারপর শুরু করুন ক্লিক করুন

  2. নিরাপত্তা নিয়ম ব্যবহার করে আপনার ক্লাউড স্টোরেজ ডেটা সুরক্ষিত করার বিষয়ে মেসেজিং পর্যালোচনা করুন। বিকাশের সময়, সর্বজনীন অ্যাক্সেসের জন্য আপনার নিয়মগুলি সেট আপ করার কথা বিবেচনা করুন৷

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

    • এই লোকেশন সেটিং হল আপনার প্রোজেক্টের ডিফল্ট Google ক্লাউড প্ল্যাটফর্ম (GCP) রিসোর্স লোকেশন । মনে রাখবেন যে এই অবস্থানটি আপনার প্রকল্পের GCP পরিষেবাগুলির জন্য ব্যবহার করা হবে যার জন্য একটি অবস্থান সেটিং প্রয়োজন, বিশেষত, আপনার ক্লাউড ফায়ারস্টোর ডাটাবেস এবং আপনার অ্যাপ ইঞ্জিন অ্যাপ (যা আপনি ক্লাউড শিডিউলার ব্যবহার করলে প্রয়োজন হয়)৷

    • যদি আপনি একটি অবস্থান নির্বাচন করতে সক্ষম না হন, তাহলে আপনার প্রকল্পে ইতিমধ্যেই একটি ডিফল্ট GCP সংস্থান অবস্থান রয়েছে৷ এটি হয় প্রকল্প তৈরির সময় বা অন্য পরিষেবা সেট আপ করার সময় সেট করা হয়েছিল যার জন্য একটি অবস্থান সেটিং প্রয়োজন৷

    আপনি যদি ব্লেজ প্ল্যানে থাকেন, আপনি একাধিক বালতি তৈরি করতে পারেন, প্রতিটির নিজস্ব অবস্থান

  4. সম্পন্ন ক্লিক করুন.

পাবলিক অ্যাক্সেস সেট আপ করুন

ফায়ারবেসের জন্য ক্লাউড স্টোরেজ একটি ঘোষণামূলক নিয়মের ভাষা প্রদান করে যা আপনাকে আপনার ডেটা কীভাবে কাঠামোগত করা উচিত, কীভাবে এটি সূচীকরণ করা উচিত এবং কখন আপনার ডেটা থেকে পড়া এবং লেখা যেতে পারে তা নির্ধারণ করতে দেয়। ডিফল্টরূপে, ক্লাউড স্টোরেজে পড়া এবং লেখার অ্যাক্সেস সীমাবদ্ধ তাই শুধুমাত্র প্রমাণীকৃত ব্যবহারকারীরা ডেটা পড়তে বা লিখতে পারে। প্রমাণীকরণ সেট আপ না করেই শুরু করতে, আপনি সর্বজনীন অ্যাক্সেসের জন্য আপনার নিয়মগুলি কনফিগার করতে পারেন৷

এটি ক্লাউড স্টোরেজ যে কারো জন্য উন্মুক্ত করে দেয়, এমনকি লোকেরা আপনার অ্যাপ ব্যবহার করে না, তাই আপনি প্রমাণীকরণ সেট আপ করার সময় আবার আপনার ক্লাউড স্টোরেজ সীমাবদ্ধ করতে ভুলবেন না।

আপনার অ্যাপে ক্লাউড স্টোরেজ SDK যোগ করুন

Firebase Android BoM ব্যবহার করে, আপনার মডিউল (অ্যাপ-লেভেল) গ্রেডল ফাইলে (সাধারণত app/build.gradle ) ক্লাউড স্টোরেজ অ্যান্ড্রয়েড লাইব্রেরির নির্ভরতা ঘোষণা করুন।

Java

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:30.3.1')

    // Declare the dependency for the Cloud Storage library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage'
}

Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

(বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি নির্ভরতা ঘোষণা করুন

আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি সংস্করণ তার নির্ভরতা লাইনে উল্লেখ করতে হবে।

মনে রাখবেন যে আপনি যদি আপনার অ্যাপে একাধিক Firebase লাইব্রেরি ব্যবহার করেন, তাহলে আমরা লাইব্রেরি সংস্করণগুলি পরিচালনা করতে BoM ব্যবহার করার সুপারিশ করি, যা নিশ্চিত করে যে সমস্ত সংস্করণ সামঞ্জস্যপূর্ণ।

dependencies {
    // Declare the dependency for the Cloud Storage library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage:20.0.1'
}

Kotlin+KTX

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:30.3.1')

    // Declare the dependency for the Cloud Storage library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage-ktx'
}

Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

(বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি নির্ভরতা ঘোষণা করুন

আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি সংস্করণ তার নির্ভরতা লাইনে উল্লেখ করতে হবে।

মনে রাখবেন যে আপনি যদি আপনার অ্যাপে একাধিক Firebase লাইব্রেরি ব্যবহার করেন, তাহলে আমরা লাইব্রেরি সংস্করণগুলি পরিচালনা করতে BoM ব্যবহার করার সুপারিশ করি, যা নিশ্চিত করে যে সমস্ত সংস্করণ সামঞ্জস্যপূর্ণ।

dependencies {
    // Declare the dependency for the Cloud Storage library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-storage-ktx:20.0.1'
}

ক্লাউড স্টোরেজ সেট আপ করুন

আপনার ক্লাউড স্টোরেজ বাকেট অ্যাক্সেস করার প্রথম ধাপ হল FirebaseStorage এর একটি উদাহরণ তৈরি করা:

Java

FirebaseStorage storage = FirebaseStorage.getInstance();

Kotlin+KTX

storage = Firebase.storage

আপনি ক্লাউড স্টোরেজ ব্যবহার শুরু করতে প্রস্তুত!

প্রথমে, আসুন শিখি কিভাবে একটি ক্লাউড স্টোরেজ রেফারেন্স তৈরি করতে হয়।

উন্নত সেটআপ

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

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

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

এই ব্যবহারের ক্ষেত্রে যেকোন একটিতে, আপনি একাধিক ক্লাউড স্টোরেজ বালতি ব্যবহার করতে চাইবেন।

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

একাধিক ক্লাউড স্টোরেজ বালতি ব্যবহার করুন

আপনি যদি উপরে প্রদত্ত ডিফল্ট ব্যতীত একটি ক্লাউড স্টোরেজ বালতি ব্যবহার করতে চান বা একটি একক অ্যাপে একাধিক ক্লাউড স্টোরেজ বালতি ব্যবহার করতে চান, তাহলে আপনি FirebaseStorage এর একটি উদাহরণ তৈরি করতে পারেন যা আপনার কাস্টম বালতিকে উল্লেখ করে:

Java

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

Kotlin+KTX

// Get a non-default Storage bucket
val storage = Firebase.storage("gs://my-custom-bucket")

আমদানি করা বালতি নিয়ে কাজ করা

ফায়ারবেসে একটি বিদ্যমান ক্লাউড স্টোরেজ বাকেট আমদানি করার সময়, Google ক্লাউড SDK- তে অন্তর্ভুক্ত gsutil টুল ব্যবহার করে Firebase-কে এই ফাইলগুলি অ্যাক্সেস করার ক্ষমতা প্রদান করতে হবে:

gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>

Firebase প্রকল্পগুলির ভূমিকায় বর্ণিত হিসাবে আপনি আপনার প্রকল্প নম্বর খুঁজে পেতে পারেন৷

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

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

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

Java

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

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

Kotlin+KTX

// Get the default bucket from a custom FirebaseApp
val storage = Firebase.storage(customApp!!)

// Get a non-default bucket from a custom FirebaseApp
val customStorage = Firebase.storage(customApp, "gs://my-custom-bucket")

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