Firebase অ্যাপ ডিস্ট্রিবিউশন Android SDK - Codelab-এর সাথে আপনার নতুন অ্যাপ রিলিজ সম্পর্কে পরীক্ষকদের সতর্ক করুন

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

c7a9160ef7b184c7.png22e0b52f771c060d.png

আপনার অ্যান্ড্রয়েড অ্যাপ কোডল্যাবে Firebase অ্যাপ ডিস্ট্রিবিউশন 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

আপনার যদি গিট ইনস্টল না থাকে তবে আপনি নমুনা প্রকল্পটি এর GitHub পৃষ্ঠা থেকে বা এই লিঙ্কে ক্লিক করে ডাউনলোড করতে পারেন।

3. স্টার্টার অ্যাপ আমদানি করুন

অ্যান্ড্রয়েড স্টুডিও থেকে, codelab-appdistribution-android/start ডিরেক্টরি নির্বাচন করুন ( android_studio_folder.png ) নমুনা কোড ডাউনলোড থেকে ( ফাইল > খুলুন > .../codelab-appdistribution-android/start)।

আপনার এখন অ্যান্ড্রয়েড স্টুডিওতে স্টার্ট প্রজেক্ট খোলা থাকা উচিত।

4. একটি ফায়ারবেস কনসোল প্রকল্প তৈরি করুন৷

একটি নতুন Firebase প্রকল্প যোগ করুন

  1. ফায়ারবেস কনসোল খুলুন।
  2. প্রকল্প যোগ করুন নির্বাচন করুন এবং তারপরে আপনার প্রকল্পের নাম "ফায়ারবেস কোডল্যাব"।

এই প্রকল্পের জন্য আপনাকে Google Analytics সক্ষম করতে হবে না।

  1. প্রকল্প তৈরি করুন ক্লিক করুন।

Firebase এ একটি অ্যাপ যোগ করুন

Firebase এর সাথে আপনার অ্যাপ নিবন্ধন করুন । প্যাকেজের নাম হিসেবে "com.google.firebase.appdistributioncodelab" ব্যবহার করুন।

আপনার অ্যাপে google-services.json ফাইল যোগ করুন

প্যাকেজের নাম যোগ করার পরে এবং নিবন্ধন নির্বাচন করার পরে, আপনার অ্যাপে google-services.json যোগ করতে এই পদক্ষেপগুলি অনুসরণ করুন:

  1. আপনার Firebase অ্যান্ড্রয়েড কনফিগারেশন ফাইল পেতে ডাউনলোড google-services.json এ ক্লিক করুন।
  2. আপনার প্রোজেক্টের app ডিরেক্টরিতে google-services.json ফাইলটি কপি করুন।
  3. ফাইলটি ডাউনলোড হওয়ার পরে আপনি কনসোলে দেখানো পরবর্তী পদক্ষেপগুলি এড়িয়ে যেতে পারেন (সেগুলি ইতিমধ্যেই আপনার জন্য বিল্ড-অ্যান্ড্রয়েড-স্টার্ট প্রকল্পে করা হয়েছে)।

আপনার Firebase অ্যাপের সাথে মেলে অ্যাপ্লিকেশন আইডি আপডেট করুন

  1. বাম মেনুতে (প্রজেক্ট ট্যাব), নিশ্চিত করুন যে আপনি "Android" এ আছেন দেখুন এবং "Gradle Scripts" ট্যাবটি সনাক্ত করুন এবং আপনার মডিউল (অ্যাপ-লেভেল) Gradle ফাইলটি খুলুন (সাধারণত app/build.gradle.kts )।
  2. আপনার ফায়ারবেস অ্যাপের অ্যাপ্লিকেশন আইডির সাথে মেলে applicationId আইডি প্রপার্টি পরিবর্তন করুন। এটি "com.google.firebase.appdistributioncodelab" হওয়া উচিত

Gradle ফাইলের সাথে আপনার প্রকল্প সিঙ্ক করুন

আপনার অ্যাপে সমস্ত নির্ভরতা উপলব্ধ রয়েছে তা নিশ্চিত করতে, অ্যান্ড্রয়েড স্টুডিও টুলবার থেকে গ্রেডল ফাইল নির্বাচন করা ফাইল > সিঙ্ক প্রজেক্ট গ্র্যাডল ফাইলের সাথে সিঙ্ক করুন।

5. অ্যাপ ডিস্ট্রিবিউশন Android SDK-এর সাথে অ্যাপ-মধ্যস্থ নতুন বিল্ড সতর্কতা সেট আপ করুন

এই ধাপে, আপনি আপনার অ্যাপে Firebase অ্যাপ ডিস্ট্রিবিউশন Android SDK যোগ করবেন এবং আপনার অ্যাপের নতুন বিল্ড ইনস্টল করার জন্য উপলব্ধ হলে আপনার পরীক্ষকদের কাছে অ্যাপ-মধ্যস্থ সতর্কতা প্রদর্শন করবেন। এটি করার জন্য, নিশ্চিত করুন যে আপনি আপনার "Firebase Codelab" প্রকল্পের জন্য Firebase App Testers API সক্ষম করেছেন (Google ক্লাউড কনসোলে)। আপনাকে একই অ্যাকাউন্ট দিয়ে সাইন ইন করতে হবে এবং উপরের ড্রপ-ডাউন মেনু থেকে সঠিক প্রকল্পটি নির্বাচন করতে হবে।

ইন-অ্যাপ সতর্কতা কনফিগার করুন

অ্যাপ ডিস্ট্রিবিউশন অ্যান্ড্রয়েড SDK আপনার পরীক্ষকদের জন্য অ্যাপ-মধ্যস্থ বিল্ড সতর্কতা সেট আপ করার দুটি উপায় প্রদান করে:

  • একটি প্রাথমিক সতর্কতা কনফিগারেশন, যা পরীক্ষকদের কাছে প্রদর্শনের জন্য একটি পূর্ব-নির্মিত ডায়ালগের সাথে আসে।
  • একটি উন্নত সতর্কতা কনফিগারেশন, যা আপনাকে আপনার ইউজার ইন্টারফেস (UI) কাস্টমাইজ করতে দেয়।

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

  1. কোনো পরীক্ষক সতর্কতা সক্রিয় করেছে কিনা তা পরীক্ষা করে। যদি তা না হয়, পদ্ধতিটি একটি পূর্ব-নির্মিত ডায়ালগ প্রদর্শন করে যা পরীক্ষকদের তাদের Google অ্যাকাউন্ট দিয়ে অ্যাপ বিতরণে সাইন ইন করতে অনুরোধ করে।

সতর্কতাগুলি সক্ষম করা হল পরীক্ষার ডিভাইসে একটি এককালীন প্রক্রিয়া যা আপনার অ্যাপের আপডেটগুলি জুড়ে থাকে৷ অ্যাপ্লিকেশানটি আনইনস্টল না হওয়া পর্যন্ত বা signOutTester পদ্ধতি কল না হওয়া পর্যন্ত সতর্কতাগুলি পরীক্ষা ডিভাইসে সক্ষম থাকে৷

  1. পরীক্ষক ইনস্টল করার জন্য নতুন উপলব্ধ বিল্ডগুলি পরীক্ষা করে।
  2. একটি পূর্ব-নির্মিত সতর্কতা প্রদর্শন করে যা পরীক্ষককে সর্বশেষ রিলিজ ডাউনলোড করতে অনুরোধ করে।
  3. আপডেটের সাথে এগিয়ে যাওয়ার আগে নতুন বিল্ড টাইপ চেক করে:
  4. যদি নতুন বিল্ডটি একটি অ্যাপ বান্ডেল (AAB) হয়, তাহলে আপডেট প্রক্রিয়াটি সম্পূর্ণ করতে পরীক্ষককে প্লে স্টোরে রিডাইরেক্ট করে।
  5. যদি নতুন বিল্ডটি একটি APK হয়, তাহলে SDK ব্যাকগ্রাউন্ডে নতুন বিল্ড ডাউনলোড করে এবং ডাউনলোড সম্পূর্ণ হলে পরীক্ষককে নতুন বিল্ড ইনস্টল করার জন্য অনুরোধ করে। SDK NotificationManager. আপনি updateIfNewReleaseAvailable টাস্কে একটি onProgressUpdate হ্যান্ডলার সংযুক্ত করে আপনার নিজস্ব অগ্রগতি সূচক যোগ করতে পারেন।

আপনি আপনার অ্যাপের যেকোনো সময়ে updateIfNewReleaseAvailable() কল করতে পারেন। উদাহরণস্বরূপ, আপনি মেইনঅ্যাক্টিভিটির 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.
                }
            }
    }

6. তৈরি করুন এবং আপনার অ্যাপ ডাউনলোড করার জন্য পরীক্ষকদের আমন্ত্রণ জানান

এই ধাপে, আপনি আপনার অ্যাপ তৈরি করেন এবং Firebase কনসোল ব্যবহার করে পরীক্ষকদের মধ্যে বিল্ড বিতরণ করে আপনার বাস্তবায়ন পরীক্ষা করেন।

আপনার অ্যাপ তৈরি করুন

আপনি যখন পরীক্ষকদের কাছে আপনার অ্যাপের একটি প্রাক-রিলিজ সংস্করণ বিতরণ করতে প্রস্তুত হন, তখন আপনার স্বাভাবিক প্রক্রিয়া ব্যবহার করে আপনার APK তৈরি করুন। আপনাকে অবশ্যই আপনার ডিবাগ কী বা অ্যাপ সাইনিং কী দিয়ে APK সাইন করতে হবে।

আপনার অ্যাপটি পরীক্ষকদের কাছে বিতরণ করুন

আপনার অ্যাপটি পরীক্ষকদের কাছে বিতরণ করতে, Firebase কনসোল ব্যবহার করে APK ফাইল আপলোড করুন:

  1. Firebase কনসোলের অ্যাপ বিতরণ পৃষ্ঠা খুলুন। অনুরোধ করা হলে আপনার Firebase প্রকল্প নির্বাচন করুন।
  2. রিলিজ পৃষ্ঠায়, ড্রপ-ডাউন মেনু থেকে আপনি যে অ্যাপটি বিতরণ করতে চান সেটি নির্বাচন করুন।

623460c3c8a82ce6.png

  1. শুরু করুন ক্লিক করুন

bf503b25066ff4a4.png

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

3343048f0930e84b.png

  1. বিল্ডটি পরীক্ষকদের কাছে উপলব্ধ করতে বিতরণ ক্লিক করুন।

2be58fe195928bf9.png

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

9935a41810344c61.png

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

আমন্ত্রণ গ্রহণ

রিলিজটি ডাউনলোড এবং পরীক্ষা করার জন্য আপনাকে প্রথমে আমন্ত্রণ গ্রহণ করতে হবে।

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

c18cb684f8e82ad6.png

পরীক্ষা ডিভাইস থেকে রিলিজ ডাউনলোড করুন

আপনি যখন অ্যাপডিস্ট্রিবিউশন কোডল্যাব অ্যাপে নেভিগেট করবেন, আপনি দেখতে পাবেন যে রিলিজটি ডাউনলোডের জন্য প্রস্তুত।

5414d9a536f25ece.png

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

b059e09acaa4779f.png

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

22e0b52f771c060d.png

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

c9f33df16a2680d.png

আপনার পরীক্ষকদের একটি আপডেট বিতরণ করুন

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

2dfa702edfdce6b8.png

বিল্ড সতর্কতা পরীক্ষা করুন

  1. অ্যাপটি খোলা থাকলে আপনি বন্ধ করেছেন তা নিশ্চিত করুন।
  2. অ্যাপটি রিস্টার্ট করুন।
  3. অ্যাপটি পুনরায় চালু হলে, আপনি একটি নতুন সংস্করণ উপলব্ধ সতর্কতা পাবেন।

987e3d0ba4e56f84.png

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

a7c7cd15d60bc764.png

  1. অভিনন্দন! আপনি অন্তর্নির্মিত সতর্কতা সহ আপনার অ্যাপ আপডেট করতে সক্ষম হয়েছেন৷

7. পরীক্ষক সাইন-ইন কাস্টমাইজ করুন

SignInTester/signOutTester এবং isTesterSignedIn পদ্ধতিগুলি আপনাকে আপনার পরীক্ষকের সাইন-ইন অভিজ্ঞতা কাস্টমাইজ করার জন্য আরও নমনীয়তা দেয়, যাতে এটি আপনার অ্যাপের চেহারা এবং অনুভূতির সাথে আরও ভালভাবে মেলে।

নিম্নলিখিত উদাহরণটি পরীক্ষাকারী ইতিমধ্যেই তাদের Firebase অ্যাপ বিতরণ পরীক্ষক অ্যাকাউন্টে সাইন ইন করেছে কিনা তা পরীক্ষা করে, তাই আপনি শুধুমাত্র সেইসব পরীক্ষকদের জন্য আপনার সাইন-ইন UI প্রদর্শন করতে বেছে নিতে পারেন যারা এখনও সাইন ইন করেননি। পরীক্ষক সাইন ইন করার পরে, আপনি তখন করতে পারেন পরীক্ষকের একটি নতুন বিল্ডে অ্যাক্সেস আছে কিনা তা পরীক্ষা করতে checkForUpdate এ কল করুন।

আসুন checkForUpdate() কলে মন্তব্য করে onResume- এ স্বয়ংক্রিয়ভাবে আপডেট চেক করা অক্ষম করি।

MainActivity.kt

override fun onResume() {
        super.onResume()
        //checkForupdate()
    }

পরিবর্তে, checkForUpdate() ইতিমধ্যেই আপডেটবাটনের OnClickListener-এ যোগ করা হয়েছে।

এখন, আমাদের সাইনইন() পদ্ধতিটি প্রয়োগ করা যাক যা ব্যবহারকারী সাইন আউট করলে সাইনইন করবে, অথবা যদি ব্যবহারকারী ইতিমধ্যে সাইন ইন করে থাকে তাহলে সাইন আউট করবে।

MainActivity.kt

    private fun signIn() {
        if (isTesterSignedIn()) {
            firebaseAppDistribution.signOutTester()
            configureUpdateButton()
            configureSigninButton()
        } else {
            firebaseAppDistribution.signInTester()
        }
    }

অবশেষে isTesterSignedIn পদ্ধতিটি বাস্তবায়ন করা যাক।

MainActivity.kt

    private fun isTesterSignedIn() : Boolean {
        return firebaseAppDistribution.isTesterSignedIn
    }

আপনার বাস্তবায়ন তৈরি করুন এবং পরীক্ষা করুন

8. অভিনন্দন!

আপনি ফায়ারবেস অ্যাপ ডিস্ট্রিবিউশন অ্যান্ড্রয়েড SDK ব্যবহার করে একটি অ্যাপে "ইন-অ্যাপ সতর্কতা প্রদর্শন" বৈশিষ্ট্য তৈরি করেছেন।

আমরা কভার করেছি কি

  • ফায়ারবেস অ্যাপ বিতরণ
  • Firebase অ্যাপ বিতরণ নতুন সতর্কতা Android SDK

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

আরও জানুন

একটি প্রশ্ন আছে?

রিপোর্ট সমস্যা