التحميل المُسبَق للإعلانات (إصدار تجريبي)

اختيار النظام الأساسي: iOS Unity Flutter Android (الإصدار القديم)

ميزة "التحميل المُسبَق للإعلانات" هي ميزة تديرها Google لتحميل الإعلانات في Google Mobile Ads Unity Plugin وتتولّى إدارة تحميل الإعلانات وتخزينها مؤقتًا نيابةً عنك. تتطلّب ميزة "التحميل المُسبَق للإعلانات" تغيير طريقة إدارة تحميل الإعلانات. لتحسين الأداء باستخدام ميزة "التحميل المُسبَق للإعلانات"، عليك إيقاف التخزين المؤقت المخصّص وتفويض هذه المسؤولية إلى Google Mobile Ads Unity Plugin.

تقدّم ميزة "التحميل المُسبَق للإعلانات" المزايا التالية مقارنةً بتحميل الإعلانات يدويًا:

  • إدارة المراجع: تحتفظ هذه الميزة بالإعلانات التي تم تحميلها حتى لا تضطر إلى الاحتفاظ بالمراجع إلى أن تصبح جاهزًا لعرضها.
  • إعادة التحميل التلقائي: يتم تلقائيًا تحميل إعلان جديد عندما تسحب إعلانًا من ذاكرة التخزين المؤقت.
  • إعادة المحاولات المُدارة: تتم تلقائيًا إعادة محاولة الطلبات التي تعذّر إرسالها باستخدام التراجع الدليلي.
  • التعامل مع انتهاء الصلاحية: يتم تلقائيًا تحديث الإعلانات قبل انتهاء صلاحيتها (عادةً بعد ساعة واحدة).
  • تحسين ذاكرة التخزين المؤقت: إذا كنت تستخدم حجم ذاكرة تخزين مؤقت أكبر من واحد، 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 يستردّ إعلانًا متاحًا ويحمِّل تلقائيًا الإعلان التالي بشكل مُسبَق في الخلفية.

تجنَّب استدعاء طريقة DequeueAd إلى أن تصبح جاهزًا لعرض إعلان. يسمح الاحتفاظ بالإعلانات في ذاكرة التخزين المؤقت لـ 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 باستخدام معرّف تحميل مُسبَق. لإيقاف التحميل المُسبَق لجميع أدوات التحميل المُسبَق، استدعِ طريقة DestroyAll.

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

ضبط حجم ذاكرة التخزين المؤقت

يتحكّم حجم ذاكرة التخزين المؤقت في عدد الإعلانات التي يتم تحميلها مُسبقًا والمحتفَظ بها في الذاكرة. تُحسِّن Google تلقائيًا حجم ذاكرة التخزين المؤقت لتحقيق التوازن بين استهلاك الذاكرة والمدة المستغرَقة لعرض الإعلانات. إذا كان تطبيقك يعرض الإعلانات قبل تحميل الإعلان التالي، يمكنك ضبط حجم ذاكرة تخزين مؤقت مخصّص لزيادة عدد الإعلانات المحتفظ بها في الذاكرة.

// Define a PreloadConfiguration and set the buffer size to 2 preloaded ads.
new PreloadConfiguration
{
    AdUnitId = "AD_UNIT_ID",
    Request = new AdRequest(),
    BufferSize = 2
};

حدود ذاكرة التخزين المؤقت للتحميل المُسبَق

Google Mobile Ads Unity Plugin يفرض حدًا على مستوى التطبيق على إجمالي عدد الإعلانات التي يتم تحميلها مُسبقًا في جميع الوحدات الإعلانية ومعرّفات التحميل المُسبَق:

  • الحدّ التلقائي: يحتفظ Google Mobile Ads Unity Plugin بحد أقصى 6 إعلانات تم تحميلها مُسبقًا في الذاكرة. تتم مشاركة هذا الحدّ بين جميع الأشكال ومعرّفات التحميل المُسبَق.
  • ننصحك بالاحتفاظ بحجم ذاكرة تخزين مؤقت يبلغ اثنين لكل معرّف تحميل مُسبَق.