বিজ্ঞাপন প্রিলোডিং (আলফা)

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

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

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

এই নির্দেশিকাটিতে প্রিলোড বিজ্ঞাপন কনফিগার করা, প্রিলোড বিজ্ঞাপনের প্রাপ্যতা পরীক্ষা করা এবং প্রিলোড করা বিজ্ঞাপন দেখানোর বিষয়গুলি অন্তর্ভুক্ত রয়েছে।

পূর্বশর্ত

টিউটোরিয়ালটি শুরু করার আগে, আপনাকে নিম্নলিখিত বিষয়গুলি সম্পূর্ণ করতে হবে:

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

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

নিম্নলিখিত উদাহরণটি বিজ্ঞাপনগুলি প্রিলোড করা শুরু করে:

var preloadConfiguration = new PreloadConfiguration
{
    AdUnitId = AD_UNIT_ID,
    Request = new AdRequest(),
};

// Start the preloading initialization process after MobileAds.Initialize().
InterstitialAdPreloader.Preload(
    // The Preload ID can be any unique string to identify this configuration.
    AD_UNIT_ID,
    preloadConfiguration);

প্রিলোডেড বিজ্ঞাপনটি পান এবং দেখান

বিজ্ঞাপন প্রিলোডিং ব্যবহার করার সময়, Google Mobile Ads Unity Plugin ক্যাশেড বিজ্ঞাপন ধরে রাখে। যখন আপনি একটি বিজ্ঞাপন দেখাতে চান, তখন DequeueAd() এ কল করুন। Google Mobile Ads Unity Plugin উপলব্ধ বিজ্ঞাপনটি পুনরুদ্ধার করে এবং স্বয়ংক্রিয়ভাবে পরবর্তী বিজ্ঞাপনটি পটভূমিতে প্রিলোড করে।

বিজ্ঞাপন দেখানোর জন্য প্রস্তুত না হওয়া পর্যন্ত এই পদ্ধতিতে কল করা এড়িয়ে চলুন। ক্যাশে বিজ্ঞাপন রাখলে Google Mobile Ads Unity Plugin স্বয়ংক্রিয়ভাবে মেয়াদোত্তীর্ণ বিজ্ঞাপনগুলি রিফ্রেশ করতে এবং ক্যাশে অপ্টিমাইজেশন করতে পারে।

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

// DequeueAd returns the next available ad and loads another ad in the background.
var ad = InterstitialAdPreloader.DequeueAd(AD_UNIT_ID);

if (ad != null)
{
    // [Optional] Interact with the ad object as needed.
    ad.OnAdPaid += (AdValue value) =>
    {
        Debug.Log($"Ad paid: {value.CurrencyCode} {value.Value}");
        // [Optional] Send the impression-level ad revenue information to your preferred
        // analytics server directly within this callback.
    };

    // Do not hold onto preloaded ads, always show a preloaded ad immediately.
    ad.Show();
}

প্রিলোডিং বিজ্ঞাপনের উপলভ্যতা পরীক্ষা করুন

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

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

নিম্নলিখিত উদাহরণটি বিজ্ঞাপনের প্রাপ্যতা পরীক্ষা করে:

var isAdAvailable = InterstitialAdPreloader.IsAdAvailable(AD_UNIT_ID);

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

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

প্রিলোড ইভেন্টগুলি বিশ্লেষণের উদ্দেশ্যে তৈরি। প্রিলোড ইভেন্ট কলব্যাকের মধ্যে:

  • Preload() কল করবেন না।
  • বিজ্ঞাপনটি তাৎক্ষণিকভাবে প্রদর্শিত না হলে DequeueAd() কল করা এড়িয়ে চলুন।

নিম্নলিখিত উদাহরণটি বিজ্ঞাপন ইভেন্টের জন্য নিবন্ধন করে:


void StartPreloadWithCallbacks()
{
    var preloadConfiguration = new PreloadConfiguration
    {
        AdUnitId = AD_UNIT_ID,
        Request = new AdRequest(),
    };

    // Start the preloading initialization process after MobileAds.Initialize().
    InterstitialAdPreloader.Preload(
        // The Preload ID can be any unique string to identify this configuration.
        AD_UNIT_ID,
        preloadConfiguration,
        onAdPreloaded,
        onAdFailedToPreload,
        onAdsExhausted);
}

void onAdPreloaded(string preloadId, ResponseInfo responseInfo)
{
    Debug.Log($"Preload ad configuration {preloadId} was preloaded.");
}

void onAdFailedToPreload(string preloadId, AdError adError)
{
    string errorMessage = $"Preload ad configuration {preloadId} failed to " +
                          $"preload with error : {adError.GetMessage()}.";
    Debug.Log(errorMessage);
}

void onAdsExhausted(string preloadId)
{
    Debug.Log($"Preload ad configuration {preloadId} was exhausted");
    // [Important] Don't call Preload() or DequeueAd() from onAdsExhausted.
}

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

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

InterstitialAdPreloader.Destroy(AD_UNIT_ID);
InterstitialAdPreloader.DestroyAll();

বাফারের আকার সেট করুন

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

new PreloadConfiguration
{
    AdUnitId = AD_UNIT_ID,
    Request = new AdRequest(),
    BufferSize = 5
};