অ্যান্ড্রয়েড কোডল্যাবে রিমোট কনফিগারেশন একীভূত করা

1. ভূমিকা

শেষ আপডেট: 2021-03-09

ফায়ারবেস রিমোট কনফিগারেশন কি?

Firebase Remote Config হল একটি ক্লাউড পরিষেবা যা ব্যবহারকারীদের বিনা খরচে একটি অ্যাপ আপডেট ডাউনলোড করার প্রয়োজন ছাড়াই আপনার অ্যাপের আচরণ এবং চেহারা পরিবর্তন করতে দেয়। রিমোট কনফিগ ব্যবহার করার সময়, আপনি অ্যাপ-মধ্যস্থ ডিফল্ট মান তৈরি করেন যা আপনার অ্যাপের আচরণ এবং চেহারা নিয়ন্ত্রণ করে। তারপরে, আপনি পরে Firebase কনসোল বা রিমোট কনফিগ ব্যাকএন্ড APIগুলি ব্যবহার করতে পারেন সমস্ত অ্যাপ ব্যবহারকারীদের জন্য বা আপনার ব্যবহারকারী বেসের অংশগুলির জন্য ইন-অ্যাপ ডিফল্ট মানগুলিকে ওভাররাইড করতে। আপডেটগুলি কখন প্রয়োগ করা হয় তা আপনার অ্যাপ নিয়ন্ত্রণ করে এবং এটি প্রায়শই আপডেটগুলি পরীক্ষা করতে পারে এবং কর্মক্ষমতার উপর একটি নগণ্য প্রভাব সহ প্রয়োগ করতে পারে৷

এটা কিভাবে কাজ করে?

রিমোট কনফিগ একটি ক্লায়েন্ট লাইব্রেরি অন্তর্ভুক্ত করে যা প্যারামিটার মানগুলি আনা এবং সেগুলি ক্যাশ করার মতো গুরুত্বপূর্ণ কাজগুলি পরিচালনা করে, যখন নতুন মানগুলি সক্রিয় করা হয় তখনও আপনাকে নিয়ন্ত্রণ দেয় যাতে সেগুলি আপনার অ্যাপের ব্যবহারকারীর অভিজ্ঞতাকে প্রভাবিত করে৷ এটি আপনাকে যেকোনো পরিবর্তনের সময় নিয়ন্ত্রণ করে আপনার অ্যাপের অভিজ্ঞতাকে সুরক্ষিত করতে দেয়।

রিমোট কনফিগারেশন ক্লায়েন্ট লাইব্রেরি get পদ্ধতি প্যারামিটার মানগুলির জন্য একটি একক অ্যাক্সেস পয়েন্ট প্রদান করে। আপনার অ্যাপটি অ্যাপ-মধ্যস্থ ডিফল্ট মান পেতে একই যুক্তি ব্যবহার করে সার্ভার-সাইড মানগুলি পায়, তাই আপনি প্রচুর কোড না লিখে আপনার অ্যাপে রিমোট কনফিগারেশনের ক্ষমতা যুক্ত করতে পারেন।

অ্যাপ-মধ্যস্থ ডিফল্ট মানগুলি ওভাররাইড করতে, আপনি আপনার অ্যাপে ব্যবহৃত প্যারামিটারগুলির মতো একই নামের প্যারামিটার তৈরি করতে Firebase কনসোল বা রিমোট কনফিগ ব্যাকএন্ড API ব্যবহার করেন। প্রতিটি প্যারামিটারের জন্য, আপনি অ্যাপ-মধ্যস্থ ডিফল্ট মানকে ওভাররাইড করতে একটি সার্ভার-সাইড ডিফল্ট মান সেট করতে পারেন এবং নির্দিষ্ট শর্ত পূরণ করে এমন অ্যাপ ইনস্ট্যান্সের জন্য অ্যাপ-মধ্যস্থ ডিফল্ট মানকে ওভাররাইড করতে আপনি শর্তসাপেক্ষ মানও তৈরি করতে পারেন। এই গ্রাফিকটি দেখায় কিভাবে দূরবর্তী কনফিগার ব্যাকএন্ড এবং আপনার অ্যাপে প্যারামিটার মানগুলিকে অগ্রাধিকার দেওয়া হয়:

61f12f33d2ac3133.png

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

  • কিভাবে ফায়ারবেস রিমোট কনফিগারেশন বাস্তবায়ন করবেন
  • কিভাবে আপনার অ্যাপ আপডেট না করে মান পরিবর্তন করতে Firebase রিমোট কনফিগারেশন ব্যবহার করবেন

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

  • অ্যান্ড্রয়েড স্টুডিওর সর্বশেষ সংস্করণ
  • একটি ফায়ারবেস অ্যাকাউন্ট
  • (প্রস্তাবিত, কিন্তু ঐচ্ছিক) আপনার অ্যাপ চালানোর জন্য একটি শারীরিক Android ডিভাইস
  • জাভা বা কোটলিনের প্রাথমিক জ্ঞান

2. সেট আপ করা হচ্ছে

(ঐচ্ছিক) নমুনা কোড ডাউনলোড করুন

এই কোডল্যাবে, আপনি আপনার নিজস্ব পরীক্ষা অ্যাপ তৈরি করবেন, তবে আপনি যদি বিদ্যমান নমুনা অ্যাপটি দেখতে এবং চালাতে চান তবে আপনি কুইকস্টার্ট নমুনা কোডটি ডাউনলোড করতে পারেন।

এই কোডল্যাবের জন্য সমস্ত কোড ডাউনলোড করতে নিম্নলিখিত বোতামে ক্লিক করুন:

ডাউনলোড করা জিপ ফাইলটি আনপ্যাক করুন। এটি quickstart-android-master নামে একটি রুট ফোল্ডার আনপ্যাক করবে।

...অথবা কমান্ড লাইন থেকে GitHub সংগ্রহস্থল ক্লোন করুন।

$ git clone https://github.com/firebase/quickstart-android.git

সংগ্রহস্থলে একাধিক ফোল্ডার রয়েছে। আমরা ব্যবহার করা হবে android_studio_folder.png কনফিগার ফোল্ডার।

(ঐচ্ছিক) নমুনা কোড আমদানি করুন

অ্যান্ড্রয়েড স্টুডিও চালু করুন, স্বাগত স্ক্রিনে "আমদানি প্রকল্প" নির্বাচন করুন। তারপরে ডাউনলোড করা ফোল্ডারটি খুলুন এবং নির্বাচন করুন android_studio_folder.png কনফিগার ফোল্ডার। তারপর "ওপেন" এ ক্লিক করুন।

5f90353b0b519642.png

নতুন অ্যান্ড্রয়েড প্রকল্প তৈরি করুন

  1. অ্যান্ড্রয়েড স্টুডিওতে, নতুন প্রকল্প শুরু করুন
  2. মৌলিক কার্যকলাপ নির্বাচন করুন
  3. "আপনার প্রকল্প কনফিগার করুন" স্ক্রিনে:
  4. আপনার প্রকল্পের নাম দিন। প্যাকেজের নাম এবং সেভ লোকেশন আপনার জন্য স্বয়ংক্রিয়ভাবে তৈরি হবে।
  5. ভাষা: জাভা
  6. ন্যূনতম SDK 16

3. আপনার Android প্রকল্পে Firebase এবং Firebase Analytics যোগ করুন

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

আপনার Android অ্যাপে Firebase যোগ করার আগে, আপনার iOS অ্যাপে সংযোগ করার জন্য আপনাকে একটি Firebase প্রকল্প তৈরি করতে হবে। Firebase প্রকল্পগুলি সম্পর্কে আরও জানতে Firebase প্রকল্পগুলি বুঝতে দেখুন

  1. Firebase কনসোলে, প্রকল্প যোগ করুন ক্লিক করুন, তারপর একটি প্রকল্পের নাম নির্বাচন করুন বা লিখুন। 910158221fe46223.png

আপনার যদি একটি বিদ্যমান Google ক্লাউড প্ল্যাটফর্ম (GCP) প্রকল্প থাকে, তাহলে আপনি সেই প্রকল্পে Firebase সংস্থান যোগ করতে ড্রপডাউন মেনু থেকে প্রকল্পটি নির্বাচন করতে পারেন।

  1. (ঐচ্ছিক) আপনি যদি একটি নতুন প্রকল্প তৈরি করেন, আপনি প্রকল্প আইডি সম্পাদনা করতে পারেন।

Firebase স্বয়ংক্রিয়ভাবে আপনার Firebase প্রকল্পে একটি অনন্য ID বরাদ্দ করে। ফায়ারবেস কিভাবে প্রোজেক্ট আইডি ব্যবহার করে সে সম্পর্কে জানতে ফায়ারবেস প্রজেক্ট বুঝতে দেখুন।

  1. অবিরত ক্লিক করুন.
  2. আপনার প্রোজেক্টের জন্য Google Analytics সেট আপ করুন, যা আপনাকে নিম্নলিখিত Firebase পণ্যগুলির যেকোনো একটি ব্যবহার করে সর্বোত্তম অভিজ্ঞতা পেতে সক্ষম করে:
  • ফায়ারবেস ক্র্যাশলাইটিক্স
  • ফায়ারবেস পূর্বাভাস
  • ফায়ারবেস ক্লাউড মেসেজিং
  • ফায়ারবেস ইন-অ্যাপ মেসেজিং
  • ফায়ারবেস রিমোট কনফিগারেশন
  • ফায়ারবেস এ/বি টেস্টিং

অনুরোধ করা হলে, একটি বিদ্যমান Google Analytics অ্যাকাউন্ট ব্যবহার করতে বা একটি নতুন অ্যাকাউন্ট তৈরি করতে নির্বাচন করুন৷ আপনি যদি একটি নতুন অ্যাকাউন্ট তৈরি করতে চান, আপনার অ্যানালিটিক্স রিপোর্টিং অবস্থান নির্বাচন করুন, তারপর আপনার প্রকল্পের জন্য ডেটা ভাগ করে নেওয়ার সেটিংস এবং Google Analytics শর্তাদি গ্রহণ করুন৷

1282a798556779ab.png

48ade68c8de27d2.png

  1. প্রোজেক্ট তৈরি করুন (অথবা যদি আপনি একটি বিদ্যমান GCP প্রোজেক্ট ব্যবহার করেন তাহলে Firebase যোগ করুন ) ক্লিক করুন।

Firebase স্বয়ংক্রিয়ভাবে আপনার Firebase প্রকল্পের জন্য সংস্থান সরবরাহ করে। প্রক্রিয়াটি সম্পূর্ণ হলে, আপনাকে Firebase কনসোলে আপনার Firebase প্রকল্পের ওভারভিউ পৃষ্ঠায় নিয়ে যাওয়া হবে।

Firebase এর সাথে আপনার অ্যাপ নিবন্ধন করুন

আপনার একটি ফায়ারবেস প্রজেক্ট থাকার পর, আপনি এতে আপনার অ্যান্ড্রয়েড অ্যাপ যোগ করতে পারেন।

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

  1. Firebase কনসোলে যান।
  2. প্রজেক্ট ওভারভিউ পৃষ্ঠার উপরে, সেটআপ ওয়ার্কফ্লো চালু করতে Android আইকনে ক্লিক করুন। আপনি যদি ইতিমধ্যেই আপনার Firebase প্রকল্পে একটি অ্যাপ যোগ করে থাকেন, তাহলে প্ল্যাটফর্মের বিকল্পগুলি প্রদর্শন করতে অ্যাপ যোগ করুন-এ ক্লিক করুন।
  3. অ্যান্ড্রয়েড প্যাকেজ নামের ক্ষেত্রে আপনার অ্যাপের প্যাকেজের নাম লিখুন।
  4. (ঐচ্ছিক) অ্যাপের ডাকনাম লিখুন।
  5. এই প্রকল্পের জন্য SHA-1 এর প্রয়োজন নেই বলে SHA-1 ক্ষেত্রটি ফাঁকা রাখুন।
  6. রেজিস্টার অ্যাপে ক্লিক করুন।

ফায়ারবেস কনফিগারেশন ফাইল যোগ করুন

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

bc8ec7d3c9a28d75.png

a99b7415462dfc8b.png

আপনার প্রজেক্ট-লেভেল গ্রেডল ফাইলে ( build.gradle ), Google Services Gradle প্লাগইন অন্তর্ভুক্ত করতে নিয়ম যোগ করুন। আপনার কাছে Google এর Maven সংগ্রহস্থলও আছে কিনা তা পরীক্ষা করে দেখুন।

প্রকল্প-স্তরের build.gradle ( <project>/build.gradle ):

buildscript {

  repositories {
    // Check that you have the following line (if not, add it):
    google()  // Google's Maven repository
  }

  dependencies {
    // ...

    // Add the following line:
    classpath 'com.google.gms:google-services:4.3.5'  // Google Services plugin
  }
}

allprojects {
  // ...

  repositories {
    // Check that you have the following line (if not, add it):
    google()  // Google's Maven repository
    // ...
  }
}

আপনার মডিউলে (অ্যাপ-লেভেল) গ্রেডল ফাইলে (সাধারণত app/build.gradle ), Google Services Gradle প্লাগইন প্রয়োগ করুন:

অ্যাপ-স্তরের build.gradle ( <project>/<app-module>/build.gradle ):

প্লাগইন প্রয়োগ করুন: 'com.android.application'

// নিম্নলিখিত লাইন যোগ করুন:

প্লাগইন প্রয়োগ করুন: 'com.google.gms.google-services' // Google পরিষেবা প্লাগইন

অ্যান্ড্রয়েড {

//...

}

আপনার Android অ্যাপে Firebase SDK যোগ করুন

রিমোট কনফিগারেশনের জন্য, ব্যবহারকারীর বৈশিষ্ট্য এবং শ্রোতাদের জন্য অ্যাপ ইনস্ট্যান্সের শর্তসাপেক্ষ টার্গেট করার জন্য Google Analytics প্রয়োজন। নিশ্চিত করুন যে আপনি আপনার প্রকল্পে Google Analytics সক্ষম করুন৷

(এটি ইতিমধ্যে নমুনা কুইকস্টার্ট কোডে করা হয়েছে)

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

এছাড়াও, অ্যানালিটিক্স সেট আপ করার অংশ হিসাবে, আপনাকে আপনার অ্যাপে Google Analytics-এর জন্য Firebase SDK যোগ করতে হবে। নির্ভরতা অধীনে, নিম্নলিখিত কোড যোগ করুন:

app/build.gradle

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

    // Declare the dependencies for the Remote Config and Analytics libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-config'
    implementation 'com.google.firebase:firebase-analytics'
}

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

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

4. রিমোট কনফিগারেশনের জন্য প্রধান উপাদান পর্যালোচনা করুন

আমরা এখন একটি অ্যাপে রিমোট কনফিগ ব্যবহার করার পদক্ষেপগুলি পর্যালোচনা করতে যাচ্ছি। এই পদক্ষেপগুলি ইতিমধ্যেই কুইকস্টার্ট কোডল্যাব কোডে সম্পন্ন হয়েছে। কি ঘটছে তা বুঝতে কুইকস্টার্ট কোডল্যাব কোড পর্যালোচনা করার সময় অনুগ্রহ করে এই বিভাগটি ব্যবহার করুন।

1. রিমোট কনফিগার সিঙ্গেলটন অবজেক্ট পান

একটি রিমোট কনফিগার অবজেক্ট ইনস্ট্যান্স পান এবং ঘন ঘন রিফ্রেশ করার জন্য ন্যূনতম আনয়ন ব্যবধান সেট করুন:

MainActivity.java

mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
        .setMinimumFetchIntervalInSeconds(3600)
        .build();
mFirebaseRemoteConfig.setConfigSettingsAsync(configSettings);

সিঙ্গলটন অবজেক্টটি অ্যাপ-মধ্যস্থ ডিফল্ট প্যারামিটার মানগুলি সংরক্ষণ করতে, ব্যাকএন্ড থেকে আপডেট করা প্যারামিটার মানগুলি আনতে এবং আপনার অ্যাপে যখন আনা মানগুলি উপলব্ধ করা হয় তখন নিয়ন্ত্রণ করতে ব্যবহৃত হয়।

বিকাশের সময়, এটি একটি অপেক্ষাকৃত কম ন্যূনতম আনার ব্যবধান সেট করার পরামর্শ দেওয়া হয়। আরও তথ্যের জন্য থ্রটলিং দেখুন।

2. অ্যাপ-মধ্যস্থ ডিফল্ট প্যারামিটার মান সেট করুন

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

আপনি মানচিত্র অবজেক্ট বা আপনার অ্যাপের res/xml ফোল্ডারে সঞ্চিত একটি XML রিসোর্স ফাইল ব্যবহার করে প্যারামিটার নাম এবং ডিফল্ট প্যারামিটার মানগুলির একটি সেট সংজ্ঞায়িত করতে পারেন। রিমোট কনফিগ কুইকস্টার্ট নমুনা অ্যাপটি ডিফল্ট প্যারামিটারের নাম এবং মান নির্ধারণ করতে একটি XML ফাইল ব্যবহার করে। এখানে আপনি কিভাবে আপনার নিজের একটি XML ফাইল তৈরি করবেন:

  1. res ফোল্ডারের অধীনে একটি xml ফোল্ডার তৈরি করুন।

4b8a2a637a626e94.png

  1. নতুন তৈরি করা xml ফোল্ডারে ডান ক্লিক করুন এবং একটি ফাইল তৈরি করুন।

358b4ba740120ece.png

  1. ডিফল্ট মান সেট করুন। পরবর্তী বিভাগে, আপনি রিমোট কনফিগ কুইকস্টার্ট এক্সএমএল ফাইলে ডিফল্ট মান পরিবর্তন করার চেষ্টা করবেন।
  2. setDefaultsAsync(int) ব্যবহার করে রিমোট কনফিগার অবজেক্টে এই মানগুলি যোগ করুন, যেমন দেখানো হয়েছে:

MainActivity.java

mFirebaseRemoteConfig.setDefaultsAsync(R.xml.remote_config_defaults);

3. আপনার অ্যাপে ব্যবহার করার জন্য প্যারামিটার মান পান

এখন আপনি দূরবর্তী কনফিগার অবজেক্ট থেকে প্যারামিটার মান পেতে পারেন। আপনি যদি ব্যাকএন্ডে মান সেট করেন, সেগুলি আনুন এবং তারপরে সেগুলি সক্রিয় করুন, সেই মানগুলি আপনার অ্যাপে উপলব্ধ। অন্যথায়, আপনি setDefaultsAsync(int) ব্যবহার করে কনফিগার করা অ্যাপ-মধ্যস্থ প্যারামিটার মানগুলি পাবেন। এই মানগুলি পেতে, নীচে তালিকাভুক্ত পদ্ধতিতে কল করুন যা আপনার অ্যাপের দ্বারা প্রত্যাশিত ডেটা টাইপের সাথে মানচিত্র করে, একটি যুক্তি হিসাবে প্যারামিটার কী প্রদান করে:

4. মান আনুন এবং সক্রিয় করুন

  1. রিমোট কনফিগ ব্যাকএন্ড থেকে প্যারামিটার মান আনতে, fetch() পদ্ধতিতে কল করুন। আপনি ব্যাকএন্ডে সেট করেছেন এমন যেকোনো মান রিমোট কনফিগারেশন অবজেক্টে আনা এবং সংরক্ষণ করা হয়।
  2. আপনার অ্যাপে আনা প্যারামিটার মান উপলব্ধ করতে, activate() পদ্ধতিতে কল করুন। যে ক্ষেত্রে আপনি একটি কলে মান আনতে এবং সক্রিয় করতে চান, আপনি রিমোট কনফিগার ব্যাকএন্ড থেকে মানগুলি আনতে এবং অ্যাপে সেগুলি উপলব্ধ করতে একটি fetchAndActivate() অনুরোধ ব্যবহার করতে পারেন:

MainActivity.java

mFirebaseRemoteConfig.fetchAndActivate()
        .addOnCompleteListener(this, new OnCompleteListener<Boolean>() {
            @Override
            public void onComplete(@NonNull Task<Boolean> task) {
                if (task.isSuccessful()) {
                    boolean updated = task.getResult();
                    Log.d(TAG, "Config params updated: " + updated);
                    Toast.makeText(MainActivity.this, "Fetch and activate succeeded",
                            Toast.LENGTH_SHORT).show();

                } else {
                    Toast.makeText(MainActivity.this, "Fetch failed",
                            Toast.LENGTH_SHORT).show();
                }
                displayWelcomeMessage();
            }
        });

যেহেতু এই আপডেট হওয়া প্যারামিটার মানগুলি আপনার অ্যাপের আচরণ এবং চেহারাকে প্রভাবিত করে, তাই আপনার আনীত মানগুলিকে এমন সময়ে সক্রিয় করা উচিত যা আপনার ব্যবহারকারীর জন্য একটি মসৃণ অভিজ্ঞতা নিশ্চিত করে, যেমন পরের বার যখন ব্যবহারকারী আপনার অ্যাপটি খুলবেন। আরও তথ্য এবং উদাহরণের জন্য দূরবর্তী কনফিগ লোডিং কৌশল দেখুন।

থ্রটলিং

যদি একটি অ্যাপ অল্প সময়ের মধ্যে অনেকবার আনয়ন করে, তবে কলগুলি থ্রটল করা হয় এবং SDK FirebaseRemoteConfigFetchThrottledException প্রদান করে। SDK সংস্করণ 17.0.0 এর আগে, 60 মিনিটের উইন্ডোতে 5টি আনার অনুরোধের সীমা ছিল (নতুন সংস্করণগুলির আরও অনুমতিমূলক সীমা রয়েছে)।

অ্যাপ ডেভেলপমেন্টের সময়, আপনি আপনার অ্যাপ ডেভেলপ এবং পরীক্ষা করার সাথে সাথে আপনাকে দ্রুত পুনরাবৃত্তি করতে দিতে খুব ঘন ঘন কনফিগগুলি আনতে এবং সক্রিয় করতে চাইতে পারেন (প্রতি ঘন্টায় অনেক বার)। 10 জন পর্যন্ত বিকাশকারীর সাথে একটি প্রকল্পে দ্রুত পুনরাবৃত্তির ব্যবস্থা করতে, আপনি সাময়িকভাবে একটি FirebaseRemoteConfigSettings অবজেক্ট সেট করতে পারেন যাতে আপনার অ্যাপে একটি কম ন্যূনতম আনয়ন ব্যবধান ( setMinimumFetchIntervalInSeconds ) থাকে।

রিমোট কনফিগারেশনের জন্য ডিফল্ট ন্যূনতম আনয়ন ব্যবধান হল 12 ঘন্টা, যার অর্থ হল 12 ঘন্টার উইন্ডোতে ব্যাকএন্ড থেকে কনফিগারেশনগুলি একবারের বেশি আনা হবে না, আসলে কতগুলি আনা কল করা হোক না কেন। বিশেষ করে, ন্যূনতম আনার ব্যবধান এই নিম্নোক্ত ক্রমে নির্ধারিত হয়:

  1. fetch(long)
  2. FirebaseRemoteConfigSettings.setMinimumFetchIntervalInSeconds(long) এ প্যারামিটার
  3. 12 ঘন্টার ডিফল্ট মান

একটি কাস্টম মানতে ন্যূনতম আনার ব্যবধান সেট করতে, FirebaseRemoteConfigSettings.Builder.setMinimumFetchIntervalInSeconds(long) ব্যবহার করুন।

5. রিমোট কনফিগারেশন দিয়ে অ্যাপের আচরণ পরিবর্তন করুন

অ্যাপ-মধ্যস্থ ডিফল্ট প্যারামিটার পরিবর্তন করুন

res/xml/remote_config_defaults.xml খুলুন এবং ডিফল্ট মান অন্য কিছুতে পরিবর্তন করুন।

res/xml/remote_config_defaults.xml

<?xml version="1.0" encoding="utf-8"?>
<!-- START xml_defaults -->
<defaultsMap>
    <entry>
        <key>loading_phrase</key>
        <value>Fetching config...</value>
    </entry>
    <entry>
        <key>welcome_message_caps</key>
        <value>false</value>
    </entry>
    <entry>
        <key>welcome_message</key>
        <value>Welcome to my awesome app!</value>
    </entry>
</defaultsMap>
    <!-- END xml_defaults -->

অ্যাপ-মধ্যস্থ ডিফল্ট মান পরিবর্তন যাচাই করুন

  1. আচরণ নিশ্চিত করতে একটি এমুলেটরে বা একটি পরীক্ষা ডিভাইস ব্যবহার করে প্রকল্পটি চালান।
  2. Java বা Kotlin সংস্করণে Open এ ক্লিক করুন।

c1582b989c25ced.png

  1. মূল দৃশ্যে স্বাগত বার্তা পর্যালোচনা করুন।

4c838bf5a629d5b8.png

দূরবর্তী কনফিগার ব্যাকএন্ডে প্যারামিটার মান সেট করুন

এখন রিমোট কনফিগারেশনের মাধ্যমে মান পাঠানোর পরীক্ষা করা যাক। ফায়ারবেস কনসোল বা রিমোট কনফিগ ব্যাকএন্ড API ব্যবহার করে, আপনি নতুন সার্ভার-সাইড ডিফল্ট মান তৈরি করতে পারেন যা আপনার পছন্দসই শর্তাধীন যুক্তি বা ব্যবহারকারীর টার্গেটিং অনুযায়ী অ্যাপ-মধ্যস্থ মানগুলিকে ওভাররাইড করে৷ এই বিভাগটি এই মানগুলি তৈরি করার জন্য Firebase কনসোলের পদক্ষেপগুলি বর্ণনা করে৷

  1. Firebase কনসোল খুলুন, আপনার প্রকল্প খুলুন.
  2. রিমোট কনফিগার ড্যাশবোর্ড দেখতে Engege বিভাগে বাম দিকের মেনু থেকে Remote Config নির্বাচন করুন।
  3. একটি প্যারামিটার যুক্ত করার অধীনে Parameter key. Default value অধীনে আপনি যা চান তা যোগ করুন। তারপর Add Parameter এ ক্লিক করুন। এই কোডল্যাবের জন্য, আমরা res/xml/remote_config_defaults.xml ফাইলে প্যারামিটার কী ব্যবহার করব। বিস্তারিত জানার জন্য নীচের টেবিল দেখুন:

প্যারামিটার কী

ডিফল্ট মান ( remote_config_defaults.xml )

বর্ণনা

লোডিং_ফ্রেজ

কনফিগারেশন আনা হচ্ছে...

স্ট্রিং; দূরবর্তী কনফিগার মান আনার সময় প্রদর্শিত হয়।

স্বাগতম_বার্তা_ক্যাপস

মিথ্যা

বুলিয়ান; সত্য হলে, সব ক্যাপগুলিতে welcome_message পরিবর্তন করে

স্বাগতম_বার্তা

আমার দুর্দান্ত অ্যাপে স্বাগতম!

স্ট্রিং; স্বাগতম বার্তা

উদাহরণ স্ক্রিনশট:

28fa48f18da43002.png

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

cfe900477549adb7.png

  1. আপনার রিমোট কনফিগ প্যারামিটার এবং মানগুলির উপর ভিত্তি করে স্বাগতম বার্তাটি আপডেট করা উচিত!

6. অভিনন্দন

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