পরীক্ষকদের কাছে অ্যাপ বান্ডেল রিলিজ বিতরণ করুন - কোডল্যাব

1. ওভারভিউ

image10.png

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

আপনি কি শিখবেন

  • কীভাবে আপনার ফায়ারবেস অ্যাপকে Google Play-এর সাথে লিঙ্ক করবেন
  • কীভাবে আপনার অ্যাপটিকে একটি অ্যাপ বান্ডেল হিসাবে প্যাকেজ এবং তৈরি করবেন
  • কিভাবে একটি রিলিজ তৈরি করবেন এবং লাইভ পরীক্ষকদের সাথে শেয়ার করবেন
  • পরীক্ষক হিসাবে নতুন রিলিজগুলি কীভাবে ডাউনলোড এবং পরীক্ষা করবেন

আপনি কি প্রয়োজন হবে

  • সর্বশেষ অ্যান্ড্রয়েড স্টুডিও সংস্করণ
  • একটি স্বাক্ষরিত বান্ডেল ফাইল যা আপনি Android স্টুডিও থেকে তৈরি করেছেন
  • একটি Google Play বিকাশকারী অ্যাকাউন্ট যার জন্য আপনি মালিক বা প্রশাসক৷
  • Google Play-তে আপনার অ্যাপটি Google Play অ্যাপ ড্যাশবোর্ডে সেট আপ করা হয়েছে এবং এটির নিম্নলিখিত স্থিতি রয়েছে:
    • অ্যাপটি Google Play ট্র্যাকগুলির মধ্যে একটিতে বিতরণ করা হয় (অভ্যন্তরীণ পরীক্ষা, বন্ধ পরীক্ষা, ওপেন টেস্টিং বা উৎপাদন)।
    • Google Play-এ অ্যাপটির পর্যালোচনা সম্পূর্ণ হয়েছে এবং অ্যাপটি প্রকাশিত হয়েছে। আপনার অ্যাপ প্রকাশিত হয় যদি অ্যাপ স্ট্যাটাস কলামে নিম্নলিখিত স্ট্যাটাসগুলির মধ্যে একটি দেখায়: অভ্যন্তরীণ পরীক্ষা (খসড়া অভ্যন্তরীণ পরীক্ষা নয়), ক্লোজড টেস্টিং, ওপেন টেস্টিং বা প্রোডাকশন।
  • Firebase থেকে নতুন বিল্ড আমন্ত্রণ পেতে আপনি পরীক্ষক হিসেবে ব্যবহার করতে পারেন এমন একটি ইমেল ঠিকানা

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

  1. Firebase এ সাইন ইন করুন।
  2. Firebase কনসোলে, প্রজেক্ট যোগ করুন ক্লিক করুন, তারপর আপনার প্রকল্পের নাম দিন "AppBundlesCodelab।" আপনার ফায়ারবেস প্রকল্পের জন্য প্রকল্প আইডি মনে রাখুন। আপনি যদি প্রজেক্ট আইডি এডিট না করেন, ফায়ারবেস স্বয়ংক্রিয়ভাবে আপনার প্রোজেক্টের জন্য একটি ইউনিক আইডি বরাদ্দ করে।

    image8.png
  3. (ঐচ্ছিক) অনুরোধ করা হলে, Google Analytics সক্ষম করুন।
  4. অবশিষ্ট ধাপগুলি সম্পূর্ণ করুন, তারপরে প্রকল্প তৈরি করুন ক্লিক করুন।

প্রজেক্টে আপনার অ্যাপ বান্ডিল যোগ করুন

  1. Firebase কনসোলে, অ্যাপ যোগ করুন ক্লিক করুন।

    image5.png
  2. আপনার অ্যাপ নিবন্ধন করার সময়, আপনার Google Play বিকাশকারী অ্যাকাউন্টে আপলোড করা অ্যাপটির মতো একই প্যাকেজ নাম ব্যবহার করতে ভুলবেন না। অবশেষে, রেজিস্টার অ্যাপে ক্লিক করুন।
  3. আপনার অ্যাপে আপনার অ্যাপের Firebase কনফিগারেশন ফাইল ( google-services.json ) যোগ করার জন্য অবশিষ্ট ধাপগুলি সম্পূর্ণ করুন। মনে রাখবেন যে Android এর জন্য, আপনার অ্যাপে যোগ করার জন্য অ্যাপ ডিস্ট্রিবিউশনের কোনো Firebase SDK নেই।
  4. কনসোল করতে অবিরত ক্লিক করুন।
  1. Firebase কনসোলে, আপনার প্রকল্প সেটিংসে যান।

    image2.png
  2. ইন্টিগ্রেশন ট্যাবে, গুগল প্লে কার্ডের লিঙ্কে ক্লিক করুন।
  3. অ্যাপ ডিস্ট্রিবিউশন ইন্টিগ্রেশন সক্ষম করতে অন-স্ক্রীন নির্দেশাবলী অনুসরণ করুন, তারপর Google Play-তে লিঙ্ক করতে আপনার নতুন তৈরি Firebase অ্যাপটি নির্বাচন করুন।

এখন যেহেতু আপনি এই পদক্ষেপগুলি সম্পন্ন করেছেন, আপনার ফায়ারবেস অ্যাপটি আপনার Google Play বিকাশকারী অ্যাকাউন্টে আপনার অ্যাপের সাথে লিঙ্ক করা হবে যতক্ষণ পর্যন্ত অ্যাপগুলির প্যাকেজের নামগুলি মিলছে।

3. আপনার প্রকল্পে অ্যাপ বিতরণ যোগ করুন

অ্যাপ ডিস্ট্রিবিউশন গ্রেডল প্লাগইন যোগ করুন

এখন, আপনি আপনার অ্যাপে অ্যাপ ডিস্ট্রিবিউশন এবং এর গ্রেডল প্লাগইন যোগ করতে অ্যান্ড্রয়েড স্টুডিও ব্যবহার করবেন।

  1. আপনার প্রজেক্ট-লেভেল গ্রেডল ফাইলে ( android/build.gradle.kts ), plugins ব্লকে অ্যাপ ডিস্ট্রিবিউশন গ্রেডল প্লাগইন যোগ করুন।
    plugins {
         //...
    
         // Add the App Distribution Gradle plugin
         id("com.google.firebase.appdistribution") version "4.0.0" apply false
    }
    
  2. আপনার প্রজেক্ট-লেভেল সেটিংস গ্রেডল ফাইলে ( android/settings.gradle.kts ), pluginManagement ব্লকে Google এর Maven সংগ্রহস্থল যোগ করুন।
     pluginManagement {
         // Check that you have Google's Maven repository (if not, add it).
         repositories {
             google()
             mavenCentral()
         }
     }
    
  3. আপনার অ্যাপ-লেভেল গ্রেডল ফাইলে ( android/app/build.gradle.kts ), plugins ব্লকে অ্যাপ ডিস্ট্রিবিউশন প্লাগইন যোগ করুন।
    plugins {
         //...
    
         // Add the App Distribution plugin
         id("com.google.firebase.appdistribution")
    }
    
  4. আপনি যদি কর্পোরেট প্রক্সি বা ফায়ারওয়ালের পিছনে থাকেন, তাহলে নিম্নলিখিত জাভা সিস্টেম প্রপার্টি যোগ করুন যা অ্যাপ ডিস্ট্রিবিউশনকে আপনার ডিস্ট্রিবিউশনগুলি Firebase-এ আপলোড করতে সক্ষম করে:
    -Djavax.net.ssl.trustStore=/path/to/truststore -Djavax.net.ssl.trustStorePassword=password
    

আপনার ফায়ারবেস প্রকল্প প্রমাণীকরণ করুন

আপনি Gradle প্লাগইন ব্যবহার করার আগে, আপনাকে আপনার ফায়ারবেস প্রকল্পকে প্রমাণীকরণ করতে হবে। এই কোডল্যাবের জন্য, আপনি Firebase CLI ব্যবহার করে আপনার Google অ্যাকাউন্টে সাইন ইন করবেন।

আপনার অ্যান্ড্রয়েড প্রকল্পের মূলে নিম্নলিখিত কমান্ডটি চালান:

~/your-android-project$ firebase login

রেফারেন্স ডকুমেন্টেশন আরো বিস্তারিত রয়েছে.

4. অ্যান্ড্রয়েড স্টুডিওতে আপনার বান্ডেল বৈশিষ্ট্যগুলি কনফিগার করুন৷

এই ধাপে, আপনি পরে যে বিল্ডটি বিতরণ করবেন তার জন্য একজন পরীক্ষক হিসেবে নিজেকে যুক্ত করবেন। একবার আপনি বিল্ডটি বিতরণ করলে, পরীক্ষকরা Firebase থেকে নতুন বিল্ড পরীক্ষা করার জন্য আমন্ত্রণ জানিয়ে ইমেল বিজ্ঞপ্তি পান।

আপনার app/build.gradle.kts এ, একটি firebaseAppDistribution বিভাগ যোগ করুন এবং নিম্নলিখিত পরামিতিগুলি অন্তর্ভুক্ত করুন:

  • appID : আপনার অ্যাপের Firebase অ্যাপ আইডি। আপনি এটি আপনার প্রকল্প সেটিংসের সাধারণ ট্যাবে খুঁজে পেতে পারেন।
  • artifactType : আপনার অ্যাপের ফাইলের ধরন ( AAB )।
  • testers : আপনার পরীক্ষকদের ইমেল ঠিকানা। এই কোডল্যাবের জন্য, আপনার নিজস্ব ইমেল যোগ করুন যাতে আপনি একবার আপনার বিল্ডটি বিতরণ করার পরে পরীক্ষা করতে পারেন।

যেমন:

    android {

       // ...

       buildTypes {
            getByName("release") {
                firebaseAppDistribution {
                  appId = "yourAppId"
                  artifactType = "AAB"
                  testers = "ali@example.com, bri@example.com, cal@example.com"
                }
            }
        }

        // ...
    }

একটি বিকল্প হিসাবে, আপনি -PappDistribution- property-name = property-value আকারে কমান্ড লাইন আর্গুমেন্ট পাস করে আপনার build.gradle.kts এ সেট করা মানগুলিকে ওভাররাইড করতে পারেন।

5. একটি রিলিজ তৈরি করুন এবং বিতরণ করুন

  1. আপনার অ্যাপ বান্ডেল ফাইল তৈরি করতে bundle Variant গ্রেডল টাস্ক চালান:
    $ ./gradlew :base:bundleRelease
    
  2. আপনার অ্যাপ্লিকেশনের বিল্ড ডিরেক্টরিতে বান্ডিলটি সনাক্ত করুন (ডিফল্ট অবস্থানটি হল app/build/outputs/bundle/release )।
  3. রিলিজ ডিস্ট্রিবিউট করতে, আপনার প্রোজেক্টের গ্রেডল র‌্যাপার দিয়ে টার্গেট bundleRelease এবং appDistributionUploadRelease তৈরি করুন। Firebase টোকেন অন্তর্ভুক্ত করুন (আপনি যেটি ধাপ 3 এ পেয়েছেন: আপনার অ্যাপে অ্যাপ বিতরণ যোগ করুন)।
    export FIREBASE_TOKEN=your_firebase_token
    
    ./gradlew --stop // Only needed for environment variable changes
    
    ./gradlew bundleRelease appDistributionUploadRelease
    

পরীক্ষকরা এখন বিল্ড ডাউনলোড এবং পরীক্ষা করার জন্য ইমেল আমন্ত্রণ পাবেন। ডেভেলপার হিসেবে, আপনি এখন অ্যাপ ডিস্ট্রিবিউশন ড্যাশবোর্ডের রিলিজ ট্যাবে বিল্ড নিরীক্ষণ করতে পারেন।

6. ডাউনলোড করুন এবং আপনার মুক্তি পরীক্ষা করুন

এই বিভাগে, আপনার বিতরণ করা রিলিজ ডাউনলোড করার জন্য আপনি একজন পরীক্ষক হিসাবে সেট আপ হবেন। একজন পরীক্ষক হিসাবে, আপনাকে আপনার পরীক্ষা ডিভাইস প্রমাণীকরণ করতে হবে এবং Google Play স্টোর অ্যাপে অভ্যন্তরীণ অ্যাপ শেয়ারিং সক্ষম করতে হবে।

  1. আপনার টেস্ট ডিভাইসে, আপনার পরীক্ষক ইমেল অ্যাকাউন্টে সাইন ইন করুন এবং Firebase থেকে আমন্ত্রণ খুলুন।

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

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

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

7. অভিনন্দন!

আপনি একটি অ্যাপ বান্ডেল আপলোড করতে এবং পরীক্ষকদের কাছে একটি রিলিজ বিতরণ করতে Firebase অ্যাপ বিতরণ ব্যবহার করেছেন।

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