টেস্টারদের থেকে মতামত সংগ্রহ করা

এই নির্দেশিকায় ঐচ্ছিক Firebase App Distribution Android SDK ব্যবহার করে কীভাবে অ্যাপ-মধ্যস্থ মতামত চালু করতে হয় তা বর্ণনা করা হয়েছে, যাতে আপনার টেস্টাররা সরাসরি অ্যাপে মতামত (স্ক্রিনশট সহ) জমা দিতে পারেন।

শুরু করার আগে

আপনি আগে থেকে না করে থাকলে, আপনার Android প্রোজেক্টে Firebase যোগ করুন।

ধাপ ১: App Distribution Tester API চালু করুন

  1. Google Cloud কনসোল খুলুন এবং আপনার Firebase প্রোজেক্ট বেছে নিন।

  2. Firebase App Testers API-এর মধ্যে, চালু করুন বিকল্পে ক্লিক করুন।

ধাপ ২: আপনার অ্যাপে App Distribution যোগ করুন

App Distribution Android SDK-তে দুটি লাইব্রেরি আছে:

  • firebase-appdistribution-api: API-অনলি লাইব্রেরি, যা আপনি সব বিল্ড ভেরিয়েন্টে অন্তর্ভুক্ত করতে পারবেন।
  • firebase-appdistribution: সম্পূর্ণ SDK প্রয়োগ (ঐচ্ছিক)।

API-অনলি লাইব্রেরি আপনার কোডকে SDK-তে কল করার অনুমতি দেয়। সম্পূর্ণ SDK প্রয়োগ করা না হলে কলের কোনও প্রভাব থাকে না।

  1. আপনার মডিউল (অ্যাপ-লেভেল) Gradle ফাইলে (সাধারণত <project>/<app-module>/build.gradle.kts বা <project>/<app-module>/build.gradle) App Distribution Android SDK-এর জন্য ডিপেন্ডেন্সি ঘোষণা করুন।

  2. আপনার Google Play বিল্ডে সম্পূর্ণ SDK ইমপ্লিমেন্টেশন সেল্ফ-আপডেট কার্যকারিতা অন্তর্ভুক্ত করা এড়াতে, বিল্ড ভেরিয়েন্ট শনাক্ত করুন, যার মধ্যে বিল্ডের ধরন বা প্রোডাক্ট ফ্লেভার রয়েছে যা আপনি App Distribution-এর মাধ্যমে ডিস্ট্রিবিউট করবেন।

  3. আপনার মডিউল (অ্যাপ-লেভেল) Gradle ফাইল-এ (সাধারণত app/build.gradle) App Distribution Android SDK-এর জন্য ডিপেন্ডেন্সি ঘোষণা করুন। শুধুমাত্র প্রি-রিলিজ টেস্টিংয়ের জন্য এক্সক্লুসিভভাবে তৈরি ভেরিয়েন্টে সম্পূর্ণ SDK ইমপ্লিমেন্টেশন যোগ করুন:

    Kotlin

    dependencies {
        // ADD the API-only library to all variants
        implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta21")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta21")
    }

    Java

    dependencies {
        // ADD the API-only library to all variants
        implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta21")
    
        // ADD the full SDK implementation to the "beta" variant only (example)
        betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta21")
    }

Kotlin-নির্দিষ্ট লাইব্রেরি মডিউল খুঁজছেন? অক্টোবর ২০২৩ রিলিজ থেকে শুরু করে, Kotlin এবং Java ডেভেলপাররা প্রধান লাইব্রেরি মডিউলের উপর নির্ভর করতে পারেন বিস্তারিত জানার জন্য, এই উদ্যোগ সম্পর্কে FAQ দেখুন।

ধাপ ৩: অ্যাপ-মধ্যস্থ মতামত কনফিগার করা

আপনার টেস্টারদের থেকে মতামত সংগ্রহ করতে, টেস্টারদের মতামত শুরু করার অনুমতি দিতে নিম্নলিখিত ট্রিগারগুলির মধ্যে একটি ব্যবহার করুন:

  • বিল্ট-ইন বিজ্ঞপ্তি ট্রিগার: App Distribution Android SDK একটি চলমান বিজ্ঞপ্তি দেখাতে পারে যা টেস্টার অ্যাপের যেকোনও জায়গা থেকে ট্যাপ করতে পারেন। আপনি যদি আরও দ্রুত শুরু করতে চান এবং আপনার টেস্টাররা কীভাবে মতামত প্রদান করবেন তা কাস্টমাইজ করার প্রয়োজন না হলে এই ট্রিগারটি ব্যবহার করুন।

  • কাস্টম ট্রিগার: আপনি নিজের ট্রিগার মেকানিজম প্রদান করতে পারেন, যেমন আপনার অ্যাপে কোনও বোতাম বা মেনু আইটেম ট্যাপ করা বা ডিভাইস ঝাঁকানো।

আপনি এই ট্রিগারগুলির মধ্যে যেকোনও একটি ব্যবহার করলে এবং টেস্টার মতামত জমা দিলে, Android SDK নিম্নলিখিত অ্যাকশনগুলি সম্পাদন করে:

  1. অ্যাপের বর্তমান অ্যাক্টিভিটির স্ক্রিনশট ক্যাপচার করে।

  2. টেস্টার SDK-এর টেস্টিং ফিচার চালু করেছেন কিনা তা নিশ্চিত করতে চেক করে। টেস্টিং ফিচার চালু করা না থাকলে, Android SDK টেস্টারকে তার Google অ্যাকাউন্ট দিয়ে App Distribution-এ সাইন-ইন করার জন্য প্রম্পট করে।

  3. একটি ফুল-স্ক্রিন অ্যাক্টিভিটি শুরু করে যা পরীক্ষককে তার মতামত লিখতে এবং জমা দিতে দেয়।

বিকল্প ১: বিজ্ঞপ্তি ট্রিগার

টেস্টারের ডিভাইসে স্থায়ী বা চলমান বিজ্ঞপ্তি দেখাতে showFeedbackNotification() ব্যবহার করুন, যাতে ট্যাপ করে তারা মতামত দেওয়া শুরু করতে পারেন। বিজ্ঞপ্তি কনফিগার করার সময়, আপনাকে কিছু টেক্সট প্রদান করতে হবে যা পরীক্ষক মতামত জমা দেওয়ার আগে তাকে দেখানো হবে এবং বিজ্ঞপ্তির জন্য বাধার লেভেল (বিজ্ঞপ্তি চ্যানেলের গুরুত্ব অনুযায়ী)। আপনি যদি আপনার টেস্টারদের তাদের মতামত ডেটা সংগ্রহ এবং প্রসেস করার বিষয়ে বিজ্ঞপ্তি দিতে চান, তাহলে আপনি এই ধরনের বিজ্ঞপ্তি দেওয়ার জন্য টেক্সট ব্যবহার করতে পারেন।

আপনি যখন showFeedbackNotification() ব্যবহার করেন এবং অ্যাপটি ব্যাকগ্রাউন্ডে চলে যায়, তখন বিজ্ঞপ্তিটি লুকানো থাকে। আপনি যদি বিজ্ঞপ্তিটি স্পষ্টভাবে লুকাতে চান, তাহলে cancelFeedbackNotification() ব্যবহার করুন। আমরা সাজেস্ট করি যে আপনি আপনার প্রধান অ্যাক্টিভিটির onCreate()-এ showFeedbackNotification() রাখুন।

Kotlin

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        Firebase.appDistribution.showFeedbackNotification(
            // Text providing notice to your testers about collection and
            // processing of their feedback data
            R.string.additionalFormText,
            // The level of interruption for the notification
            InterruptionLevel.HIGH)
    }
}

Java

public class MainActivity extends AppCompatActivity {
    FirebaseAppDistribution firebaseAppDistribution =
        FirebaseAppDistribution.getInstance();
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        firebaseAppDistribution.showFeedbackNotification(
            // Text providing notice to your testers about collection and
            // processing of their feedback data
            R.string.additionalFormText,
            // The level of interruption for the notification
            InterruptionLevel.HIGH);
    }
}

বিকল্প ২: কাস্টম ট্রিগার

আপনার পছন্দের মেকানিজম ব্যবহার করে মতামত জানানোর প্রক্রিয়া শুরু করতে startFeedback() পদ্ধতি ব্যবহার করুন। যেমন, মতামত ট্রিগার করতে, আপনি হয়ত আপনার অ্যাপের অ্যাকশন মেনুতে "মতামত পাঠান" মেনু আইটেম যোগ করতে চাইবেন অথবা আপনার টেস্টারদের তাদের ডিভাইস ঝাঁকাতে অথবা স্ক্রিনশট নিতে বলবেন। আপনি যখন ফিডব্যাক ট্রিগার করবেন, তখন কিছু টেক্সট প্রদান করুন যা টেস্টারকে দেখানো হবে ফিডব্যাক জমা দেওয়ার আগে। আপনি যদি আপনার পরীক্ষকদের তাদের মতামত ডেটা সংগ্রহ এবং প্রক্রিয়াকরণ সম্পর্কে একটি বিজ্ঞপ্তি প্রদান করতে চান, তাহলে আপনি এই ধরনের বিজ্ঞপ্তি প্রদান করতে এই টেক্সট ব্যবহার করতে পারেন।

Kotlin

Firebase.appDistribution.startFeedback(R.string.feedbackMessage)

Java

FirebaseAppDistribution.getInstance().startFeedback(R.string.feedbackMessage);

ধাপ ৪: আপনার ইম্প্লিমেন্টেশন তৈরি ও পরীক্ষা করা

লোকাল টেস্টিং

অ্যাপ ডিস্ট্রিবিউট না করেই আপনার ইমপ্লিমেন্টেশন পরীক্ষা করতে, এইসব ধাপ অনুসরণ করুন:

  1. আপনার লোকাল ডিভাইসে ডেভ মোড চালু করুন:

    adb shell setprop debug.firebase.appdistro.devmode true
  2. আপনার অ্যাপকে প্রি-রিলিজ ভ্যারিয়েন্ট হিসেবে তৈরি করুন যাতে সম্পূর্ণ App Distribution লাইব্রেরি অন্তর্ভুক্ত থাকে এবং ধাপ ৩: অ্যাপ-মধ্যস্থ মতামত কনফিগার করুন-এ প্রয়োগ করা মেকানিজম ব্যবহার করে আপনি মতামত ট্রিগার করতে পারেন কিনা তা পরীক্ষা করুন। ডেভ মোডে থাকলে মতামত জমা দেওয়া হয় না।

  3. টেস্ট করার পরে, আপনার ডিভাইসে 'ডেভ মোড' বন্ধ করতে পারবেন:

    adb shell setprop debug.firebase.appdistro.devmode false

এন্ড-টু-এন্ড টেস্টিং

আপনার অ্যাপ যে মতামত পাঠাতে পারে তা পরীক্ষা করতে, আপনার অ্যাপকে প্রি-রিলিজ ভেরিয়েন্ট হিসেবে তৈরি করুন যাতে সম্পূর্ণ App Distribution লাইব্রেরি অন্তর্ভুক্ত থাকে এবং এইসব ধাপ অনুসরণ করে আপনার ইমপ্লিমেন্টেশন পরীক্ষা করুন:

  1. App Distribution-এ নতুন অ্যাপ রিলিজ আপলোড করুন।

  2. আপনার অ্যাক্সেস করার অনুমতি আছে এমন অ্যাকাউন্টে অ্যাপ রিলিজ ডিস্ট্রিবিউট করুন।

  3. App Distribution-এর ওয়েব বা Android টেস্টার অ্যাপের মাধ্যমে অ্যাপ ডাউনলোড করুন।

  4. ধাপ ৩: অ্যাপ-মধ্যস্থ মতামত কনফিগার করুন-এ প্রয়োগ করা মেকানিজম ব্যবহার করে মতামত ট্রিগার করুন।

  5. আপনি যে অ্যাকাউন্ট থেকে অ্যাপ রিলিজ ডিস্ট্রিবিউট করেছেন, সেই অ্যাকাউন্টেই সাইন-ইন করেছেন কিনা তা ভালোভাবে দেখে নিন এবং মতামত জমা দিন।

  6. Firebase কনসোলে নতুন রিলিজের কার্ডে আপনার মতামত দেখুন।

অ্যাপে পরীক্ষকরা মতামত শুরু করতে না পারার মতো সাধারণ সমস্যাগুলি কীভাবে সমাধান করবেন তা জানতে, SDK-এর মাধ্যমে টেস্টিং ফিচার চালু করা দেখুন।

ধাপ ৫: টেস্টারের মতামত ম্যানেজ করা

আপনার টেস্টারদের মতামত পাঠানোর অনুমতি দেওয়ার পরে, আপনি নিম্নলিখিত টুল ব্যবহার করে সেই মতামত পর্যালোচনা করতে এবং সেই অনুযায়ী কাজ করতে পারেন:

Firebase কনসোলে মতামত দেখুন ও মুছে দিন

আপনি Firebase কনসোলে নির্দিষ্ট রিলিজের অধীনে টেস্টারের মতামত ট্যাব খুলে স্ক্রিনশট সহ ব্যবহারকারীর মতামত পর্যালোচনা করতে এবং মুছে ফেলতে পারবেন। ব্যবহারকারীর মতামত রিলিজ অনুযায়ী সাজানো হয় যাতে আপনি কনফার্ম করতে পারেন যে কোন ভার্সনের জন্য মতামত প্রযোজ্য।

ব্যবহারকারীর মতামত পর্যালোচনা করার পরে, আপনি মতামত মুছুন বোতামে ক্লিক করে সেই মতামত মুছে দিতে পারবেন। মুছে ফেলা মতামত আপনার রিলিজ থেকে সরিয়ে দেওয়া হয়।

নতুন মতামতের জন্য ইমেল সতর্কতা পান

টেস্টারের থেকে নতুন মতামত সম্পর্কে আগে থেকে জানতে, কোনও টেস্টার মতামত জমা দিলে আপনি ইমেল বিজ্ঞপ্তি পেতে পারেন। ইমেল সতর্কতায় আপনার টেস্টার যে লিখিত মতামত দিয়েছেন এবং তিনি যে স্ক্রিনশট জমা দিয়েছেন তার লিঙ্ক অন্তর্ভুক্ত থাকে।

এই ডিফল্ট মেকানিজম ব্যবহার করে App Distribution ইমেল সতর্কতা পেতে, আপনার কাছে firebase.projects.update অনুমতি থাকতে হবে। নিম্নলিখিত ভূমিকায় ডিফল্ট হিসেবে এই প্রয়োজনীয় অনুমতি অন্তর্ভুক্ত থাকে: Firebase অ্যাডমিন বা প্রোজেক্ট মালিক বা এডিটর।

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

ইমেল সতর্কতা বন্ধ করতে, Firebase সতর্কতা পান দেখুন।

থার্ড-পার্টি টুলে নতুন মতামত পাঠান

এছাড়াও, আপনি Cloud Functions for Firebase ব্যবহার করে আপনার টিমের পছন্দের বিজ্ঞপ্তি চ্যানেলে App Distribution সতর্কতা পাঠাতে পারেন। যেমন, আপনি এমন একটি ফাংশন লিখতে পারেন যা নতুন অ্যাপ-মধ্যস্থ ফিডব্যাকের জন্য একটি সতর্কতা ইভেন্ট ক্যাপচার করে এবং সতর্কতা তথ্য Discord, Slack বা Jira-এর মতো থার্ড-পার্টি পরিষেবায় পোস্ট করে।

Cloud Functions for Firebase ব্যবহার করে উন্নত সতর্কতার ক্ষমতা সেট-আপ করতে, এইসব ধাপ অনুসরণ করুন:

  1. Cloud Functions for Firebase সেট-আপ করুন, যার মধ্যে নিম্নলিখিত টাস্ক অন্তর্ভুক্ত:

    1. Node.js ও npm ডাউনলোড করুন।

    2. Firebase CLI ইনস্টল করে সাইন-ইন করুন।

    3. Firebase CLI ব্যবহার করে Cloud Functions for Firebase শুরু করুন।

  2. এমন একটি ফাংশন লিখুন ও ডিপ্লয় করুন যা App Distribution থেকে অ্যাপ-মধ্যস্থ ফিডব্যাক অ্যালার্ট ইভেন্ট ক্যাপচার করে এবং ইভেন্ট পেলোড ম্যানেজ করে (যেমন, Discord-এ মেসেজে অ্যালার্টের তথ্য পোস্ট করে)।

Jira-তে কীভাবে নতুন মতামত পাঠাতে হয় তা দেখায় এমন একটি উদাহরণ ফাংশন দেখতে, এই ফাংশন স্যাম্পেল দেখুন।

আপনি ক্যাপচার করতে পারেন এমন সব সতর্কতা ইভেন্ট সম্পর্কে জানতে, App Distribution সতর্কতা-এর জন্য রেফারেন্স ডকুমেন্টেশন দেখুন।