বিজ্ঞাপন প্রি-লোডিং (বিটা)

প্ল্যাটফর্ম বেছে নিন: iOS Unity Flutter Android (Legacy)

বিজ্ঞাপন প্রি-লোডিং হল Google Mobile Ads Flutter Plugin-এ Google-ম্যানেজ করা বিজ্ঞাপন লোডিং ফিচার যা আপনার হয়ে বিজ্ঞাপন লোডিং ও ক্যাশিং ম্যানেজ করে। বিজ্ঞাপন প্রি-লোডিংয়ের জন্য বিজ্ঞাপন লোডিং ম্যানেজ করার পদ্ধতিতে পরিবর্তন করতে হবে। বিজ্ঞাপন প্রি-লোডিং ব্যবহার করে পারফর্ম্যান্স অপ্টিমাইজ করতে, কাস্টম ক্যাশিং বন্ধ করুন এবং সেই দায়িত্ব Google Mobile Ads Flutter Plugin-কে দিন।

ম্যানুয়াল বিজ্ঞাপন লোডিংয়ের তুলনায় বিজ্ঞাপন প্রি-লোডিংয়ের নিম্নলিখিত সুবিধাগুলি রয়েছে:

  • রেফারেন্স ম্যানেজমেন্ট: লোড করা বিজ্ঞাপন হোল্ড করে রাখে, ফলে আপনি সেগুলি দেখানোর জন্য রেডি না হওয়া পর্যন্ত আপনাকে রেফারেন্স ম্যানেজ করতে হয় না।
  • অটোমেটিক রিলোডিং: আপনি ক্যাশে থাকা কোনও বিজ্ঞাপন সরিয়ে দিলে, অটোমেটিক একটি নতুন বিজ্ঞাপন লোড হয়ে যায়।
  • ম্যানেজ করা রিট্রাই: এক্সপোনেনশিয়াল ব্যাকঅফ ব্যবহার করে ব্যর্থ অনুরোধ অটোমেটিক আবার চেষ্টা করে।
  • মেয়াদ শেষ হওয়া ম্যানেজ করা: বিজ্ঞাপন শেষ হওয়ার আগে (সাধারণত এক ঘণ্টা পরে) অটোমেটিক রিফ্রেশ করে।
  • ক্যাশে অপ্টিমাইজেশন: আপনি একের চেয়ে বড় ক্যাশে সাইজ ব্যবহার করলে, Google Mobile Ads Flutter Plugin সবচেয়ে ভালো বিজ্ঞাপন ডেলিভার করার জন্য ক্যাশে অর্ডার অপ্টিমাইজ করে।

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

পূর্বশর্ত

এই টিউটোরিয়াল অনুসরণ করার আগে, আপনাকে অবশ্যই সেট-আপ Google Mobile Ads Flutter Plugin করতে হবে।

বিজ্ঞাপন প্রি-লোড করা শুরু করুন

অ্যাপ চালু হলে, start মেথড একবার কল করুন। আপনি start মেথড কল করার পরে, Google Mobile Ads Flutter Plugin অটোমেটিক বিজ্ঞাপন প্রি-লোড করে এবং প্রি-লোড করা কনফিগারেশনের জন্য ব্যর্থ অনুরোধ আবার করার চেষ্টা করে।

নিচে দেওয়া উদাহরণে বিজ্ঞাপন প্রিলোড করা শুরু হয়:

InterstitialAdPreloader.start(
  preloadId: _adUnitId,
  preloadConfiguration: PreloadConfiguration(adUnitId: _adUnitId),
  callback: const PreloadCallback(),
);

আপনার বিজ্ঞাপন ইউনিট আইডির সাথে _adUnitId পরিবর্তন করুন।

প্রিলোড করা বিজ্ঞাপন পাওয়া ও দেখানো

বিজ্ঞাপন প্রিলোডিং ব্যবহার করার সময়, Google Mobile Ads Flutter Plugin ক্যাশে করা বিজ্ঞাপন হোল্ড করে। আপনি কোনও বিজ্ঞাপন দেখাতে চাইলে, pollAd মেথড কল করুন। Google Mobile Ads Flutter Plugin উপলভ্য বিজ্ঞাপন রিসিভ করে এবং ব্যাকগ্রাউন্ডে অটোমেটিক পরবর্তী বিজ্ঞাপন প্রিলোড করে।

আপনি বিজ্ঞাপন দেখানোর জন্য প্রস্তুত না হওয়া পর্যন্ত pollAd পদ্ধতি কল করা এড়িয়ে যান। ক্যাশেতে বিজ্ঞাপন রাখলে, Google Mobile Ads Flutter Plugin অটোমেটিক মেয়াদ ফুরিয়ে যাওয়া বিজ্ঞাপন রিফ্রেশ করতে এবং ক্যাশে অপ্টিমাইজ করতে পারে।

নিচের উদাহরণটি একটি প্রি-লোডেড বিজ্ঞাপন রিট্রিভ করে এবং দেখায়:

void _pollAndShowAd() async {
  final InterstitialAd? ad = await InterstitialAdPreloader.pollAd(_adUnitId);
  if (ad != null) {
    _interstitialAd = ad;
    ad.fullScreenContentCallback = FullScreenContentCallback(
      onAdImpression: (ad) {
        // Called when an impression occurs on the ad.
        debugPrint('Ad recorded an impression.');
      },
    );
    ad.onPaidEvent = (ad, valueMicros, precision, currencyCode) {
      // Called when an ad is estimated to have earned money.
      debugPrint('Ad paid: $valueMicros $currencyCode.');
    };
    // Show the ad.
    await ad.show();
  }
}

প্রিলোডিং বিজ্ঞাপন উপলভ্য আছে কিনা চেক করা

বিজ্ঞাপন উপলভ্য আছে কিনা তা চেক করতে, নিম্নলিখিত বিকল্পগুলির মধ্যে একটি বেছে নিন:

প্রিলোড করা বিজ্ঞাপনের উপলভ্যতা সম্পর্কে তথ্য পাওয়া

নিচে দেওয়া উদাহরণে বিজ্ঞাপনের উপলভ্যতা চেক করা হয়েছে:

void _checkAdAvailability() async {
  final bool isAvailable = await InterstitialAdPreloader.isAdAvailable(
    _adUnitId,
  );
  debugPrint('Is ad available: $isAvailable');
}

প্রিলোড করা বিজ্ঞাপনের উপলভ্যতা সম্পর্কে শোনা

বিজ্ঞাপন সফলভাবে প্রি-লোড করা হলে, প্রি-লোড করা না গেলে বা বিজ্ঞাপন ক্যাশে আর জায়গা না থাকলে বিজ্ঞপ্তি পেতে প্রি-লোড ইভেন্টের জন্য রেজিস্টার করুন।

অ্যানালিটিক্সের উদ্দেশ্যে প্রিলোড ইভেন্ট ব্যবহার করা হয়। প্রিলোড ইভেন্টের মধ্যে কলব্যাক:

  • start নম্বরে কল করবেন না।
  • বিজ্ঞাপনটি অবিলম্বে দেখানো না হলে, pollAd কল করা এড়িয়ে চলুন।

নিচে দেওয়া উদাহরণে বিজ্ঞাপন ইভেন্টের জন্য রেজিস্টার করা হয়েছে:

InterstitialAdPreloader.start(
  preloadId: _adUnitId,
  preloadConfiguration: PreloadConfiguration(adUnitId: _adUnitId),
  callback: PreloadCallback(
    onAdPreloaded: (preloadId, responseInfo) {
      debugPrint('Ad preloaded for ID: $preloadId');
    },
    onAdFailedToPreload: (preloadId, error) {
      debugPrint('Ad failed to preload for ID: $preloadId. Error: $error');
    },
    onAdsExhausted: (preloadId) {
      debugPrint('All preloaded ads exhausted for ID: $preloadId');
    },
  ),
);

বিজ্ঞাপন প্রি-লোড করা বন্ধ করা

সেশনে প্রিলোড আইডির জন্য আর বিজ্ঞাপন দেখানোর প্রয়োজন না হলে, আপনি বিজ্ঞাপন প্রিলোড করা বন্ধ করতে পারেন। নির্দিষ্ট প্রিলোড আইডির জন্য বিজ্ঞাপন প্রিলোড করা বন্ধ করতে, প্রিলোড আইডি সহ destroy কল করুন। সব প্রিলোডারের জন্য প্রিলোডিং বন্ধ করতে, destroyAll কল করুন।

void _stopPreloading() async {
  await InterstitialAdPreloader.destroy(_adUnitId);
}

বাফার সাইজ সেট করা

মেমরিতে সেভ করা প্রি-লোড করা বিজ্ঞাপনের সংখ্যা বাফার সাইজ নিয়ন্ত্রণ করে। সাধারণত, মেমরি ব্যবহার ও বিজ্ঞাপন দেখানোর লেটেন্সি ব্যালেন্স করতে Google বাফার সাইজ অপ্টিমাইজ করে। পরের বিজ্ঞাপন লোড হওয়ার আগে আপনার অ্যাপ বিজ্ঞাপন দেখালে, মেমরিতে রাখা বিজ্ঞাপনের সংখ্যা বাড়াতে আপনি কাস্টম বাফার সাইজ সেট করতে পারবেন।

InterstitialAdPreloader.start(
  preloadId: _adUnitId,
  preloadConfiguration: PreloadConfiguration(
    adUnitId: _adUnitId,
    bufferSize: 3,
  ),
  callback: const PreloadCallback(),
);

প্রিলোড ক্যাশের সীমা

Google Mobile Ads Flutter Plugin সব বিজ্ঞাপন ইউনিট ও প্রিলোড আইডি জুড়ে প্রিলোড করা বিজ্ঞাপনের মোট সংখ্যার উপর অ্যাপ-ব্যাপী সীমা প্রয়োগ করে:

  • ডিফল্ট সীমা: Google Mobile Ads Flutter Plugin মেমরিতে সর্বাধিক ৬টি প্রি-লোড করা বিজ্ঞাপন হোল্ড করে। এই সীমা সব ফর্ম্যাট ও প্রি-লোড আইডি জুড়ে শেয়ার করা হয়।
  • আমরা প্রতিটি প্রি-লোড আইডির জন্য দুটি করে বাফার সাইজ রাখার সাজেশন দিই।