1. সংক্ষিপ্ত বিবরণ


আপনার অ্যান্ড্রয়েড অ্যাপ কোডল্যাবের ইন্টিগ্রেটিং দ্য ফায়ারবেস অ্যাপ ডিস্ট্রিবিউশন SDK-তে আপনাকে স্বাগতম। এই কোডল্যাবে, আপনি আপনার অ্যাপে অ্যাপ ডিস্ট্রিবিউশন Android SDK যোগ করবেন যাতে নতুন বিল্ড ডাউনলোডের জন্য উপলব্ধ হলে আপনার পরীক্ষকদের অ্যাপ-মধ্যস্থ সতর্কতা প্রদর্শন করা যায়। আপনি শিখবেন কিভাবে আপডেট পেতে আপনার পরীক্ষকদের সাইন ইন করার জন্য একটি মৌলিক কনফিগারেশন এবং একটি কাস্টম কনফিগারেশন উভয়ই ব্যবহার করতে হয়। তারপর আপনি অ্যাপ ডিস্ট্রিবিউশনে একটি নতুন রিলিজ পুশ করবেন এবং সরাসরি অ্যাপে একটি নতুন বিল্ড সতর্কতা ট্রিগার করবেন।
তুমি কি শিখবে
- পরীক্ষকদের কাছে একটি প্রি-রিলিজ অ্যাপ বিতরণ করার জন্য অ্যাপ ডিস্ট্রিবিউশন কীভাবে ব্যবহার করবেন
- আপনার অ্যাপে অ্যাপ ডিস্ট্রিবিউশন অ্যান্ড্রয়েড এসডিকে কীভাবে একীভূত করবেন
- নতুন প্রি-রিলিজ বিল্ড ইনস্টল করার জন্য প্রস্তুত থাকলে কীভাবে একজন পরীক্ষককে সতর্ক করবেন
- আপনার পরীক্ষার চাহিদা মেটাতে SDK কীভাবে কাস্টমাইজ করবেন
তোমার যা লাগবে
- সর্বশেষ অ্যান্ড্রয়েড স্টুডিও সংস্করণ।
- নমুনা কোড।
- Android 4.4+ এবং Google Play পরিষেবা 9.8 বা তার পরবর্তী সংস্করণ সহ একটি পরীক্ষামূলক ডিভাইস, অথবা Google Play পরিষেবা 9.8 বা তার পরবর্তী সংস্করণ সহ একটি এমুলেটর।
- যদি কোনও ডিভাইস ব্যবহার করেন, তাহলে একটি সংযোগ কেবল।
আপনি এই টিউটোরিয়ালটি কীভাবে ব্যবহার করবেন?
অ্যান্ড্রয়েড অ্যাপ তৈরির ক্ষেত্রে আপনার অভিজ্ঞতাকে আপনি কীভাবে মূল্যায়ন করবেন?
2. নমুনা কোড পান
কমান্ড লাইন থেকে GitHub রিপোজিটরি ক্লোন করুন।
$ git clone https://github.com/FirebaseExtended/codelab-appdistribution-android.git
যদি আপনার গিট ইনস্টল না থাকে, তাহলে আপনি এর গিটহাব পৃষ্ঠা থেকে অথবা এই লিঙ্কে ক্লিক করে নমুনা প্রকল্পটি ডাউনলোড করতে পারেন।
৩. স্টার্টার অ্যাপটি আমদানি করুন
অ্যান্ড্রয়েড স্টুডিও থেকে, codelab-appdistribution-android/start ডিরেক্টরিটি নির্বাচন করুন (
) নমুনা কোড ডাউনলোড থেকে ( ফাইল > খুলুন > .../codelab-appdistribution-android/start )।
এখন আপনার অ্যান্ড্রয়েড স্টুডিওতে স্টার্ট প্রজেক্টটি খোলা থাকা উচিত।
৪. একটি ফায়ারবেস প্রকল্প তৈরি এবং সেট আপ করুন
একটি নতুন Firebase প্রকল্প তৈরি করুন
- আপনার গুগল অ্যাকাউন্ট ব্যবহার করে ফায়ারবেস কনসোলে সাইন ইন করুন।
- একটি নতুন প্রকল্প তৈরি করতে বোতামটি ক্লিক করুন, এবং তারপর একটি প্রকল্পের নাম লিখুন (উদাহরণস্বরূপ,
App Distribution Codelab)। - চালিয়ে যান ক্লিক করুন।
- যদি অনুরোধ করা হয়, তাহলে Firebase শর্তাবলী পর্যালোচনা করুন এবং গ্রহণ করুন, এবং তারপর Continue এ ক্লিক করুন।
- (ঐচ্ছিক) Firebase কনসোলে ("Gemini in Firebase" নামে পরিচিত) AI সহায়তা সক্ষম করুন।
- এই কোডল্যাবের জন্য, আপনার গুগল অ্যানালিটিক্সের প্রয়োজন নেই , তাই গুগল অ্যানালিটিক্স বিকল্পটি টগল করে বন্ধ করে দিন ।
- Create project এ ক্লিক করুন, আপনার province করার জন্য অপেক্ষা করুন, এবং তারপর Continue এ ক্লিক করুন।
Firebase-এ একটি অ্যাপ যোগ করুন
Firebase-এ আপনার অ্যাপটি নিবন্ধন করুন । প্যাকেজের নাম হিসেবে "com.google.firebase.appdistributioncodelab" ব্যবহার করুন।
আপনার অ্যাপে google-services.json ফাইল যোগ করুন
প্যাকেজের নাম যোগ করার পর এবং Register নির্বাচন করার পর, আপনার অ্যাপে google-services.json যোগ করতে এই পদক্ষেপগুলি অনুসরণ করুন:
- আপনার Firebase Android কনফিগারেশন ফাইলটি পেতে Download google-services.json এ ক্লিক করুন।
- আপনার প্রোজেক্টের
appডিরেক্টরিতে google-services.json ফাইলটি কপি করুন। - ফাইলটি ডাউনলোড হওয়ার পরে আপনি কনসোলে দেখানো পরবর্তী পদক্ষেপগুলি এড়িয়ে যেতে পারেন (বিল্ড-অ্যান্ড্রয়েড-স্টার্ট প্রকল্পে সেগুলি ইতিমধ্যেই আপনার জন্য করা হয়েছে)।
আপনার Firebase অ্যাপের সাথে মানানসই করে অ্যাপ্লিকেশন আইডি আপডেট করুন
- বাম মেনুতে (প্রজেক্ট ট্যাব), নিশ্চিত করুন যে আপনি "Android" ভিউতে আছেন এবং "Gradle Scripts" ট্যাবটি সনাক্ত করুন এবং আপনার মডিউল (অ্যাপ-লেভেল) Gradle ফাইলটি খুলুন (সাধারণত
app/build.gradle.kts)। - আপনার Firebase অ্যাপের অ্যাপ্লিকেশন আইডির সাথে মেলানোর জন্য
applicationIdপ্রপার্টিটি পরিবর্তন করুন। এটি "com.google.firebase.appdistributioncodelab" হওয়া উচিত।
আপনার প্রকল্পটি গ্র্যাডেল ফাইলগুলির সাথে সিঙ্ক করুন
আপনার অ্যাপে সমস্ত নির্ভরতা উপলব্ধ রয়েছে তা নিশ্চিত করতে, Android Studio টুলবার থেকে Gradle Files নির্বাচন করে আপনার প্রকল্পটি Gradle files এর সাথে সিঙ্ক করুন।
৫. অ্যাপ ডিস্ট্রিবিউশন অ্যান্ড্রয়েড এসডিকে ব্যবহার করে অ্যাপ-মধ্যস্থ নতুন বিল্ড সতর্কতা সেট আপ করুন।
এই ধাপে, আপনি আপনার অ্যাপে Firebase অ্যাপ ডিস্ট্রিবিউশন অ্যান্ড্রয়েড SDK যোগ করবেন এবং আপনার অ্যাপের নতুন বিল্ড ইনস্টল করার জন্য উপলব্ধ হলে আপনার পরীক্ষকদের কাছে অ্যাপ-মধ্যস্থ সতর্কতা প্রদর্শন করবেন। এটি করার জন্য, নিশ্চিত করুন যে আপনি আপনার "Firebase Codelab" প্রকল্পের জন্য (Google Cloud Console-এ) Firebase অ্যাপ টেস্টার্স API সক্ষম করেছেন। আপনাকে একই অ্যাকাউন্ট দিয়ে সাইন ইন করতে হবে এবং উপরের ড্রপ-ডাউন মেনু থেকে সঠিক প্রকল্পটি নির্বাচন করতে হবে।
অ্যাপ-মধ্যস্থ সতর্কতা কনফিগার করুন
অ্যাপ ডিস্ট্রিবিউশন অ্যান্ড্রয়েড এসডিকে আপনার পরীক্ষকদের জন্য অ্যাপ-মধ্যস্থ বিল্ড সতর্কতা সেট আপ করার দুটি উপায় প্রদান করে:
- একটি মৌলিক সতর্কতা কনফিগারেশন, যা পরীক্ষকদের দেখানোর জন্য একটি পূর্ব-নির্মিত ডায়ালগ সহ আসে।
- একটি উন্নত সতর্কতা কনফিগারেশন, যা আপনাকে আপনার ব্যবহারকারী ইন্টারফেস (UI) কাস্টমাইজ করতে দেয়।
আমরা বেসিক অ্যালার্ট কনফিগারেশন দিয়ে শুরু করব। আপনি updateIfNewReleaseAvailable ব্যবহার করে এমন পরীক্ষকদের কাছে একটি পূর্ব-নির্মিত সক্ষম সতর্কতা ডায়ালগ প্রদর্শন করতে পারেন যারা এখনও সতর্কতা সক্ষম করেননি, এবং তারপর একটি নতুন বিল্ড উপলব্ধ কিনা তা পরীক্ষা করতে পারেন। পরীক্ষকরা অ্যাপ ডিস্ট্রিবিউশনে অ্যাপটিতে অ্যাক্সেস আছে এমন একটি অ্যাকাউন্টে সাইন ইন করে সতর্কতা সক্ষম করেন। কল করা হলে, পদ্ধতিটি নিম্নলিখিত ক্রমটি কার্যকর করে:
- একজন পরীক্ষক সতর্কতা সক্ষম করেছেন কিনা তা পরীক্ষা করে। যদি না হয়, তাহলে পদ্ধতিটি একটি পূর্ব-নির্মিত ডায়ালগ প্রদর্শন করে যা পরীক্ষকদের তাদের Google অ্যাকাউন্ট দিয়ে অ্যাপ ডিস্ট্রিবিউশনে সাইন ইন করতে অনুরোধ করে।
সতর্কতা সক্ষম করা হল পরীক্ষামূলক ডিভাইসে একটি এককালীন প্রক্রিয়া যা আপনার অ্যাপের আপডেট জুড়ে চলতে থাকে। অ্যাপটি আনইনস্টল না করা পর্যন্ত বা signOutTester পদ্ধতি কল না করা পর্যন্ত পরীক্ষামূলক ডিভাইসে সতর্কতা সক্রিয় থাকে।
- পরীক্ষক ইনস্টল করার জন্য নতুন উপলব্ধ বিল্ডগুলির জন্য পরীক্ষা করে।
- একটি পূর্ব-নির্মিত সতর্কতা প্রদর্শন করে যা পরীক্ষককে সর্বশেষ সংস্করণটি ডাউনলোড করতে অনুরোধ করে।
- আপডেটটি শুরু করার আগে নতুন বিল্ডের ধরণটি পরীক্ষা করে:
- যদি নতুন বিল্ডটি একটি অ্যাপ বান্ডেল (AAB) হয়, তাহলে আপডেট প্রক্রিয়া সম্পন্ন করার জন্য পরীক্ষকটিকে প্লে স্টোরে পুনঃনির্দেশিত করে।
- যদি নতুন বিল্ডটি একটি APK হয়, তাহলে SDK ব্যাকগ্রাউন্ডে নতুন বিল্ডটি ডাউনলোড করে এবং ডাউনলোড সম্পূর্ণ হলে পরীক্ষককে নতুন বিল্ডটি ইনস্টল করার জন্য অনুরোধ করে। SDK
NotificationManager.আপনিupdateIfNewReleaseAvailableTask-এ একটিonProgressUpdateহ্যান্ডলার সংযুক্ত করে আপনার নিজস্ব অগ্রগতি নির্দেশক যোগ করতে পারেন।
আপনি আপনার অ্যাপের যেকোনো স্থানে updateIfNewReleaseAvailable() কল করতে পারেন। উদাহরণস্বরূপ, আপনি MainActivity এর onResume() পদ্ধতির সময় updateIfNewReleaseAvailable() কল করতে পারেন:
MainActivity.kt খুলুন, এবং onResume() পদ্ধতিটি এভাবে তৈরি করুন:
MainActivity.kt সম্পর্কে
override fun onResume() {
super.onResume()
checkForUpdate()
}
এবার checkForUpdate() পদ্ধতিটি বাস্তবায়ন করা যাক।
MainActivity.kt সম্পর্কে
private fun checkForUpdate() {
firebaseAppDistribution.updateIfNewReleaseAvailable()
.addOnProgressListener { updateProgress ->
// (Optional) Implement custom progress updates in addition to
// automatic NotificationManager updates.
}
.addOnFailureListener { e ->
if (e is FirebaseAppDistributionException) {
// Handle exception.
}
}
}
৬. আপনার অ্যাপটি ডাউনলোড করার জন্য পরীক্ষকদের তৈরি করুন এবং আমন্ত্রণ জানান।
এই ধাপে, আপনি আপনার অ্যাপ তৈরি করবেন এবং ফায়ারবেস কনসোল ব্যবহার করে পরীক্ষকদের কাছে বিল্ড বিতরণ করে আপনার বাস্তবায়ন পরীক্ষা করবেন।
আপনার অ্যাপ তৈরি করুন
যখন আপনি আপনার অ্যাপের একটি প্রি-রিলিজ সংস্করণ পরীক্ষকদের কাছে বিতরণ করার জন্য প্রস্তুত হবেন, তখন আপনার স্বাভাবিক প্রক্রিয়া ব্যবহার করে আপনার APK তৈরি করুন। আপনাকে অবশ্যই আপনার ডিবাগ কী বা অ্যাপ সাইনিং কী দিয়ে APK সাইন করতে হবে।
পরীক্ষকদের কাছে আপনার অ্যাপ বিতরণ করুন
পরীক্ষকদের কাছে আপনার অ্যাপ বিতরণ করতে, Firebase কনসোল ব্যবহার করে APK ফাইলটি আপলোড করুন:
- Firebase কনসোলের অ্যাপ ডিস্ট্রিবিউশন পৃষ্ঠাটি খুলুন। অনুরোধ করা হলে আপনার Firebase প্রকল্পটি নির্বাচন করুন।
- রিলিজ পৃষ্ঠায়, ড্রপ-ডাউন মেনু থেকে আপনি যে অ্যাপটি বিতরণ করতে চান তা নির্বাচন করুন।

- শুরু করুন ক্লিক করুন

- আপনার অ্যাপের APK ফাইলটি আপলোড করার জন্য কনসোলে টেনে আনুন।
- আপলোড সম্পন্ন হলে, আপনি যে পরীক্ষক গোষ্ঠী এবং পৃথক পরীক্ষকদের বিল্ডটি পেতে চান তা নির্দিষ্ট করুন। (আমন্ত্রণ গ্রহণের জন্য আপনার ইমেল যোগ করুন।) তারপর, বিল্ডের জন্য রিলিজ নোট যোগ করুন। পরীক্ষক গোষ্ঠী তৈরি সম্পর্কে আরও জানতে, পরীক্ষকদের যোগ করুন এবং সরান দেখুন।

- পরীক্ষকদের জন্য বিল্ডটি উপলব্ধ করতে বিতরণে ক্লিক করুন।

Firebase কনসোলে, আপনি এখন আপনার অ্যাপের রিলিজের অধীনে আপনার যোগ করা পরীক্ষকগুলি দেখতে পাবেন।

যেহেতু আপনি আপনার ইমেল ঠিকানাটি অন্তর্ভুক্ত করেছেন, তাই আপনি Firebase অ্যাপ ডিস্ট্রিবিউশন থেকে একটি ইমেল পাবেন যেখানে আপনাকে অ্যাপটি পরীক্ষা করার জন্য আমন্ত্রণ জানানো হবে। আপনি এখন প্রথম পরীক্ষক! আপনার পরীক্ষামূলক ডিভাইসে পরীক্ষক হিসেবে সেট আপ করতে আমন্ত্রণ গ্রহণ করুন বিভাগে নির্দেশাবলী অনুসরণ করুন।
আমন্ত্রণ গ্রহণ করুন
রিলিজটি ডাউনলোড এবং পরীক্ষা করার জন্য আপনাকে প্রথমে আমন্ত্রণ গ্রহণ করতে হবে।
- আপনার অ্যান্ড্রয়েড টেস্ট ডিভাইসে, Firebase অ্যাপ ডিস্ট্রিবিউশন থেকে পাঠানো ইমেলটি খুলুন এবং শুরু করুন এ আলতো চাপুন।
- Firebase অ্যাপ ডিস্ট্রিবিউশন টেস্টার ওয়েব অ্যাপে যে অ্যাপটি প্রদর্শিত হবে, তাতে আপনার Google অ্যাকাউন্ট দিয়ে সাইন ইন করুন এবং "আমন্ত্রণ গ্রহণ করুন" এ আলতো চাপুন। এখন আপনি যে রিলিজটি পরীক্ষা করার জন্য আমন্ত্রিত হয়েছেন তা দেখতে পাবেন।

পরীক্ষামূলক ডিভাইস থেকে রিলিজটি ডাউনলোড করুন
যখন আপনি AppDistribution codelab অ্যাপে যান, তখন আপনি দেখতে পাবেন যে রিলিজটি ডাউনলোডের জন্য প্রস্তুত।

- ডাউনলোড করুন এ ট্যাপ করুন, তারপর অ্যাপটি ইনস্টল করে চালান!
- অ্যাপটি শুরু হলে, এটি আপনাকে নতুন বিল্ড সতর্কতা সক্ষম করতে বলবে। চালু করুন এ আলতো চাপুন।

- আপনার পরীক্ষক অ্যাকাউন্ট দিয়ে সাইন ইন করুন..

আপনাকে অ্যাপে ফিরিয়ে আনা হবে। পরের বার অ্যাপটি চালানোর সময়, আপনাকে সাইন ইন করতে হবে না বা সতর্কতা গ্রহণ করতে হবে না।

আপনার পরীক্ষকদের কাছে একটি আপডেট বিতরণ করুন
- আপনার মডিউল (অ্যাপ-লেভেল) গ্র্যাডেল ফাইলে (সাধারণত app/build.gradle) আপনার versionName "1.1" এবং versionCode 2 এ আপডেট করুন।
- আপনার স্বাভাবিক প্রক্রিয়া ব্যবহার করে আপনার APK তৈরি করুন। আপনাকে অবশ্যই আপনার ডিবাগ কী বা অ্যাপ সাইনিং কী দিয়ে APK সাইন করতে হবে।
- আপনার Firebase কনসোলে এই নতুন APK টি আপলোড করুন, আপনার ইমেলটি আবার পরীক্ষক হিসেবে যোগ করুন এবং Distribute এ ক্লিক করুন।

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

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

- অভিনন্দন! আপনি বিল্ট-ইন সতর্কতা ব্যবহার করে আপনার অ্যাপটি আপডেট করতে পেরেছেন।
৭. পরীক্ষক সাইন-ইন কাস্টমাইজ করুন
signInTester/signOutTester এবং isTesterSignedIn পদ্ধতিগুলি আপনার পরীক্ষকের সাইন-ইন অভিজ্ঞতা কাস্টমাইজ করার ক্ষেত্রে আরও নমনীয়তা প্রদান করে, যাতে এটি আপনার অ্যাপের চেহারা এবং অনুভূতির সাথে আরও ভালভাবে মেলে।
পরীক্ষক ইতিমধ্যেই তাদের Firebase অ্যাপ ডিস্ট্রিবিউশন টেস্টার অ্যাকাউন্টে সাইন ইন করেছেন কিনা তা নিম্নলিখিত উদাহরণে পরীক্ষা করা হয়েছে, তাই আপনি শুধুমাত্র সেইসব পরীক্ষকদের জন্য আপনার সাইন-ইন UI প্রদর্শন করতে পারেন যারা এখনও সাইন ইন করেননি। পরীক্ষক সাইন ইন করার পরে, আপনি checkForUpdate এ কল করে পরীক্ষা করতে পারেন যে পরীক্ষকের নতুন বিল্ডে অ্যাক্সেস আছে কিনা।
checkForUpdate() কলটি মন্তব্য করে onResume- এ স্বয়ংক্রিয়ভাবে আপডেট পরীক্ষা করা বন্ধ করা যাক।
MainActivity.kt সম্পর্কে
override fun onResume() {
super.onResume()
//checkForupdate()
}
পরিবর্তে, checkForUpdate() ইতিমধ্যেই updatebutton এর OnClickListener এ যোগ করা হয়েছে।
এখন, আমাদের signIn() পদ্ধতিটি বাস্তবায়ন করা যাক যা ব্যবহারকারী সাইন আউট হলে তাকে সাইন ইন করবে, অথবা ব্যবহারকারী যদি ইতিমধ্যেই সাইন ইন থাকে তবে তাকে সাইন আউট করবে।
MainActivity.kt সম্পর্কে
private fun signIn() {
if (isTesterSignedIn()) {
firebaseAppDistribution.signOutTester()
configureUpdateButton()
configureSigninButton()
} else {
firebaseAppDistribution.signInTester()
}
}
অবশেষে, আসুন isTesterSignedIn পদ্ধতিটি বাস্তবায়ন করি।
MainActivity.kt সম্পর্কে
private fun isTesterSignedIn() : Boolean {
return firebaseAppDistribution.isTesterSignedIn
}
আপনার বাস্তবায়ন তৈরি করুন এবং পরীক্ষা করুন
৮. অভিনন্দন!
আপনি Firebase অ্যাপ ডিস্ট্রিবিউশন অ্যান্ড্রয়েড SDK ব্যবহার করে একটি অ্যাপে "ইন-অ্যাপ সতর্কতা প্রদর্শন" বৈশিষ্ট্যটি তৈরি করেছেন।
আমরা যা কভার করেছি
- ফায়ারবেস অ্যাপ বিতরণ
- ফায়ারবেস অ্যাপ ডিস্ট্রিবিউশন নতুন অ্যালার্টস অ্যান্ড্রয়েড এসডিকে
পরবর্তী পদক্ষেপ
আরও জানুন
একটি প্রশ্ন আছে?
সমস্যাগুলি রিপোর্ট করুন