Pramuat iklan (Alfa)

Pramuat iklan adalah fitur pemuatan iklan yang dikelola Google di Google Mobile Ads Unity Plugin yang mengelola pemuatan dan caching iklan atas nama Anda. Pramuat iklan memerlukan perubahan dalam cara Anda mengelola pemuatan iklan. Untuk mengoptimalkan performa menggunakan pramuat iklan, nonaktifkan caching kustom dan delegasikan tanggung jawab tersebut ke Google Mobile Ads Unity Plugin.

Pramuat iklan menawarkan manfaat berikut dibandingkan pemuatan iklan manual:

  • Pengelolaan referensi: menyimpan iklan yang dimuat sehingga Anda tidak perlu mempertahankan referensi hingga Anda siap menayangkannya.
  • Pemuatan ulang otomatis: otomatis memuat iklan baru saat Anda mengambil iklan dari cache.
  • Percobaan ulang yang dikelola: otomatis mencoba lagi permintaan yang gagal menggunakan backoff eksponensial.
  • Penanganan masa berlaku: otomatis memperbarui iklan sebelum masa berlakunya berakhir (biasanya setelah satu jam).
  • Pengoptimalan cache: Jika Anda menggunakan ukuran cache yang lebih besar dari satu, Google Mobile Ads Unity Plugin mengoptimalkan urutan cache untuk menayangkan iklan terbaik.

Panduan ini membahas cara mengonfigurasi iklan pramuat, memeriksa ketersediaan iklan pramuat, dan menampilkan iklan pramuat.

Prasyarat

Sebelum melanjutkan tutorial, Anda harus menyelesaikan item berikut:

Mulai memuat iklan

Untuk mulai memuat iklan, panggil Preload(). Panggil metode ini hanya sekali per ID pramuat. Sebaiknya panggil metode ini saat sesi aplikasi dimulai. Setelah Anda memanggil Preload(), Google Mobile Ads Unity Plugin akan otomatis memuat iklan dan mencoba lagi permintaan yang gagal untuk ID pramuat tersebut.

Contoh berikut memulai pramuat iklan:

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);

Mendapatkan dan menampilkan iklan pramuat

Saat menggunakan pramuat iklan, Google Mobile Ads Unity Plugin akan menyimpan iklan yang di-cache. Jika ingin menampilkan iklan, panggil DequeueAd(). Google Mobile Ads Unity Plugin akan mengambil iklan yang tersedia dan otomatis memuat iklan berikutnya di latar belakang.

Contoh berikut mengambil dan menampilkan iklan pramuat:

// 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();
}

Memeriksa ketersediaan iklan pramuat

Untuk memeriksa ketersediaan iklan, pilih salah satu opsi berikut:

Mendapatkan ketersediaan iklan pramuat

Contoh berikut memeriksa ketersediaan iklan:

var isAdAvailable = InterstitialAdPreloader.IsAdAvailable(AD_UNIT_ID);

Memantau ketersediaan iklan pramuat

Daftar ke peristiwa pramuat untuk mendapatkan notifikasi saat iklan berhasil dimuat, gagal dimuat, atau cache iklan habis.

Peristiwa pramuat ditujukan untuk tujuan analisis. Dalam callback peristiwa pramuat:

  • Jangan panggil Preload().
  • Hindari memanggil DequeueAd() kecuali jika iklan akan segera ditampilkan.

Contoh berikut mendaftarkan peristiwa iklan:


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.
}

Menghentikan pramuat iklan

Jika tidak perlu menampilkan iklan untuk ID pramuat lagi dalam sesi, Anda dapat menghentikan pramuat iklan. Untuk menghentikan pramuat iklan untuk ID pramuat tertentu, panggil Destroy() dengan ID pramuat. Untuk menghentikan pramuat untuk semua pramuat, panggil DestroyAll().

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

Menetapkan ukuran buffer

Ukuran buffer mengontrol jumlah iklan pramuat yang disimpan dalam memori. Secara default, Google mengoptimalkan ukuran buffer untuk menyeimbangkan konsumsi memori dan latensi penayangan iklan. Jika aplikasi Anda menampilkan iklan sebelum iklan berikutnya dimuat, Anda dapat menetapkan ukuran buffer kustom untuk meningkatkan jumlah iklan yang disimpan dalam memori. Sebaiknya gunakan ukuran buffer dua atau tiga.

Batas cache pramuat

Google Mobile Ads Unity Plugin menerapkan batas di seluruh aplikasi pada jumlah total iklan pramuat di semua unit iklan dan ID pramuat:

  • Batas default: Google Mobile Ads Unity Plugin menyimpan maksimum enam iklan pramuat dalam memori. Batas ini berlaku untuk semua format dan ID pramuat.
  • Sebaiknya pertahankan ukuran buffer dua atau tiga per ID pramuat.
new PreloadConfiguration
{
    AdUnitId = AD_UNIT_ID,
    Request = new AdRequest(),
    BufferSize = 5
};