Android এর জন্য Firebase বুঝুন

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

এই পৃষ্ঠায় কভার না করা একটি বিষয় সম্পর্কে আপনার যদি প্রশ্ন থাকে, তাহলে নির্দ্বিধায় আমাদের অনলাইন সম্প্রদায়গুলির একটিতে যান৷ আমরা এই পৃষ্ঠাটিকে পর্যায়ক্রমে নতুন বিষয়গুলির সাথে আপডেট করব, তাই আপনি যে বিষয় সম্পর্কে জানতে চান তা আমরা যুক্ত করেছি কিনা তা দেখতে ফিরে দেখুন!

অ্যান্ড্রয়েড স্টুডিওর জন্য ফায়ারবেস সহকারী প্লাগইন

ফায়ারবেস অ্যাসিস্ট্যান্ট হল একটি অ্যান্ড্রয়েড স্টুডিও প্লাগইন যা আপনার অ্যান্ড্রয়েড অ্যাপকে একটি ফায়ারবেস প্রোজেক্টের সাথে নিবন্ধন করে এবং আপনার অ্যান্ড্রয়েড প্রোজেক্টে প্রয়োজনীয় Firebase কনফিগারেশন ফাইল, প্লাগইন এবং নির্ভরতা যোগ করে — সবই Android স্টুডিওর মধ্যে থেকে!

Firebase সহকারী ব্যবহার করার জন্য Android শুরু করার পৃষ্ঠার নির্দেশাবলী অনুসরণ করুন। নিশ্চিত করুন যে আপনি অ্যান্ড্রয়েড স্টুডিও এবং ফায়ারবেস সহকারী উভয়েরই সবচেয়ে আপ-টু-ডেট সংস্করণ ব্যবহার করছেন ( ফাইলে যান > আপডেটের জন্য চেক করুন )।

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

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

Google পরিষেবাগুলি — প্লাগইন এবং কনফিগার ফাইল

আপনার অ্যান্ড্রয়েড প্রোজেক্টে Firebase যোগ করার অংশ হিসেবে, আপনাকে আপনার প্রোজেক্টে google-services প্লাগইন এবং একটি google-services.json কনফিগারেশন ফাইল যোগ করতে হবে।

আপনি যদি Firebase কনসোল , ম্যানেজমেন্ট REST API , বা Firebase CLI এর মাধ্যমে আপনার Android প্রকল্পে Firebase যোগ করেন, তাহলে আপনাকে অবশ্যই আপনার প্রকল্পে প্লাগইন এবং কনফিগার ফাইলটি ম্যানুয়ালি যোগ করতে হবে। যাইহোক, আপনি যদি ফায়ারবেস সহকারী ব্যবহার করেন তবে সেটআপের সময় এই কাজগুলি আপনার জন্য স্বয়ংক্রিয়ভাবে সম্পন্ন হয়।

কিভাবে Google পরিষেবা প্লাগইন এবং কনফিগার ফাইল একসাথে কাজ করে সে সম্পর্কে জানতে Android ডকুমেন্টেশন দেখুন।

Firebase Android BoM ( Bill of Materials )

Firebase Android BoM ( Bill of Materials ) আপনাকে শুধুমাত্র একটি সংস্করণ উল্লেখ করে আপনার সমস্ত Firebase লাইব্রেরি সংস্করণ পরিচালনা করতে দেয় — BoM এর সংস্করণ৷

আপনি যখন আপনার অ্যাপে Firebase BoM ব্যবহার করেন, BoM স্বয়ংক্রিয়ভাবে BoM এর সংস্করণে ম্যাপ করা পৃথক লাইব্রেরি সংস্করণগুলিকে টেনে আনে। সমস্ত পৃথক লাইব্রেরি সংস্করণ সামঞ্জস্যপূর্ণ হবে. আপনি যখন আপনার অ্যাপে BoM এর সংস্করণ আপডেট করেন, তখন আপনি আপনার অ্যাপে ব্যবহার করেন এমন সমস্ত Firebase লাইব্রেরি সেই BoM সংস্করণে ম্যাপ করা সংস্করণে আপডেট হবে।

কোন Firebase লাইব্রেরি সংস্করণগুলি একটি নির্দিষ্ট BoM সংস্করণে ম্যাপ করা হয়েছে তা জানতে, সেই BoM সংস্করণের জন্য রিলিজ নোটগুলি দেখুন৷ আপনি যদি অন্য BoM সংস্করণের তুলনায় একটি BoM সংস্করণে ম্যাপ করা লাইব্রেরি সংস্করণগুলির তুলনা করতে চান তবে নীচের তুলনা উইজেটটি ব্যবহার করুন৷

BoM প্ল্যাটফর্মের জন্য Gradle এর সমর্থন সম্পর্কে আরও জানুন।

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

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

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Firebase Android BoM ব্যবহার করার বিষয়ে এখানে কিছু প্রায়শই জিজ্ঞাসিত প্রশ্ন রয়েছে:

Firebase BoM সংস্করণ তুলনা করুন

কোটলিন এক্সটেনশন (KTX) লাইব্রেরি মডিউল

ফিচার মডিউল এবং প্লে ফিচার ডেলিভারি

মে 2021 থেকে ( Firebase BoM v28.0.0), Firebase Android SDK গুলি আপনার বেস অ্যাপ্লিকেশন মডিউল থেকে আলাদাভাবে ইনস্টল করা ডায়নামিক বৈশিষ্ট্য মডিউলগুলিতে ব্যবহার করা যেতে পারে।

গতিশীল বৈশিষ্ট্য মডিউলগুলির জন্য সমর্থন সক্ষম করতে, আপনার বেস মডিউলের build.gradle ফাইলে নিম্নলিখিত নির্ভরতা যুক্ত করুন:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta04'
}

এখন যেহেতু আপনি ডায়নামিক মডিউল সমর্থন যোগ করেছেন, আপনি আপনার অ্যাপের ফিচার মডিউলগুলির জন্য Firebase SDK নির্ভরতা ( Firebase BoM সাথে বা ছাড়া) যোগ করতে পারেন এবং সেগুলিকে আপনি স্বাভাবিকভাবে ব্যবহার করতে পারেন৷

উদাহরণস্বরূপ, যদি আপনার অ্যাপ্লিকেশনটি একটি নির্দিষ্ট রিয়েলটাইম বৈশিষ্ট্যকে পাওয়ার জন্য Realtime Database ব্যবহার করে তবে আপনি বেস মডিউলের পরিবর্তে বৈশিষ্ট্য মডিউলের build.gradlefirebase-database নির্ভরতা যোগ করতে পারেন। এটি বেশিরভাগ ব্যবহারকারীর জন্য ডাউনলোডের আকার হ্রাস করবে।

বৈশিষ্ট্য মডিউলগুলিতে Firebase SDK ব্যবহার করার সময় নিম্নলিখিত সতর্কতাগুলি সম্পর্কে সচেতন থাকুন:

  • Dynamic Links বা Firebase In-App Messaging মতো পণ্যগুলি যা Analytics first_open ইভেন্টের উপর নির্ভর করে একটি ডায়নামিক বৈশিষ্ট্য মডিউলে ব্যবহার করা হলে এই ইভেন্টটি মিস করতে পারে।

  • Cloud Firestore এবং Authentication একসাথে ব্যবহার করার সময়, আপনার উভয়কে একই মডিউলে অন্তর্ভুক্ত করা উচিত। যদি এটি সম্ভব না হয়, তাহলে নিশ্চিত করুন যে Cloud Firestore আগে Authentication লোড হয়েছে; অন্যথায়, কিছু Cloud Firestore অপারেশনের একটি ভুল প্রমাণীকরণ অবস্থা থাকতে পারে।

  • একটি গতিশীল বৈশিষ্ট্য মডিউলের নির্ভরতা হিসাবে firebase-crashlytics-ndk ব্যবহার করার সময়, Crashlytics NDK ডকুমেন্টেশনে বর্ণিত হিসাবে আপনাকে আপনার অ্যাপের build.gradle ফাইলে unstrippedNativeLibsDir প্রপার্টি সেট করতে হবে।

ফিচার মডিউল এবং প্লে ফিচার ডেলিভারি সম্পর্কে আরও তথ্যের জন্য, প্লে ফিচার ডেলিভারির ওভারভিউ দেখুন।

গুগল সার্ভিস গ্রেডল প্লাগইন বনাম গুগল প্লে সার্ভিস বনাম গুগল প্লে স্টোর

গুগল, ফায়ারবেস এবং অ্যান্ড্রয়েড ইকোসিস্টেমের বেশ কয়েকটি অংশে একই রকম নামকরণের নিয়ম রয়েছে। এখানে প্রতিটি জন্য একটি সংক্ষিপ্ত ব্যাখ্যা:

গুগল সার্ভিস গ্রেডল প্লাগইন
একটি Gradle প্লাগইন ( com.google.gms.google-services ) যা আপনার অ্যাপের Firebase এবং Google API অ্যাক্সেস করার জন্য সঠিক কনফিগারেশন আছে তা নিশ্চিত করতে বিল্ড টাইমে চলে
নাম থাকা সত্ত্বেও, এই প্লাগইনটির Google Play পরিষেবাগুলির সাথে কোন সম্পর্ক নেই (পরবর্তী এন্ট্রি দেখুন) এবং রানটাইমে আপনার অ্যাপের ক্ষমতার উপর কোন প্রভাব ফেলে না।
এই প্লাগইনটি Firebase সেট আপ করার অংশ হিসাবে আপনার অ্যাপে যোগ করা google-services.json ফাইলটিকেও প্রক্রিয়া করে। Google পরিষেবা Gradle প্লাগইন সম্পর্কে আরও জানুন।
গুগল প্লে পরিষেবা
একটি অদৃশ্য ব্যাকগ্রাউন্ড পরিষেবা যা একটি অ্যান্ড্রয়েড ডিভাইসে চলে এবং ডিভাইসে থাকা অ্যাপগুলিতে বেশ কয়েকটি সাধারণ Google API (যেমন Google মানচিত্র এবং Google সাইন ইন) প্রদান করে
এই সাধারণ APIগুলিকে একটি একক পরিষেবাতে কেন্দ্রীভূত করার মাধ্যমে, এটি অন্যান্য অ্যাপগুলির আকার হ্রাস করে এবং একটি ডিভাইসকে OS আপডেট ছাড়াই স্বয়ংক্রিয় নিরাপত্তা আপডেট এবং বৈশিষ্ট্য বর্ধিতকরণগুলি পেতে দেয়৷ Google Play পরিষেবা সম্পর্কে আরও জানুন।
গুগল প্লে স্টোর
একটি Android ডিভাইসে অ্যাপ, সিনেমা, বই এবং আরও অনেক কিছু ডাউনলোড করার জন্য একটি স্টোর
একজন ডেভেলপার হিসেবে, আপনি Google Play Console-এর মাধ্যমে আপনার অ্যাপের জন্য বিতরণ, রিলিজ ইত্যাদি পরিচালনা করেন। যদি একটি ডিভাইসে Google Play Store থাকে, তবে এটি Google Play পরিষেবাগুলিও চালাচ্ছে (আগের এন্ট্রি দেখুন)। বিকাশকারীদের জন্য Google Play স্টোর সম্পর্কে আরও জানুন।
গুগল প্লে গেম পরিষেবা
মোবাইল গেম ডেভেলপারদের জন্য API-এর একটি সেট
Google Play গেম পরিষেবাগুলি সম্পর্কে আরও জানুন এবং কীভাবে আপনার Google Play গেম পরিষেবা প্রকল্পের সাথে Firebase একীভূত করবেন

Firebase Android SDK-এর জন্য ওপেন সোর্স রিসোর্স

ফায়ারবেস ওপেন সোর্স ডেভেলপমেন্টকে সমর্থন করে এবং আমরা সম্প্রদায়ের অবদান এবং প্রতিক্রিয়াকে উৎসাহিত করি।

Firebase Android SDKs

বেশিরভাগ Firebase Android SDK আমাদের সর্বজনীন Firebase GitHub সংগ্রহস্থলে ওপেন সোর্স লাইব্রেরি হিসেবে তৈরি করা হয়েছে। আমরা শীঘ্রই আমাদের সর্বজনীন GitHub-এ অবশিষ্ট ব্যক্তিগতভাবে উন্নত Firebase লাইব্রেরিগুলি সরানোর জন্য সক্রিয়ভাবে কাজ করছি!

দ্রুত শুরু নমুনা

Firebase Android এ বেশিরভাগ Firebase API-এর জন্য কুইকস্টার্ট নমুনার সংগ্রহ বজায় রাখে। আমাদের সর্বজনীন ফায়ারবেস গিটহাব কুইকস্টার্ট রিপোজিটরিতে এই কুইকস্টার্টগুলি খুঁজুন।

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

আগ্রহের অন্যান্য বিষয়