Pramuat iklan (Beta)

Pramuat iklan adalah fitur pemuatan iklan yang dikelola Google di Google Mobile Ads Flutter Plugin yang mengelola pemuatan dan penyimpanan iklan dalam cache atas nama Anda. Pramuat iklan memerlukan perubahan pada cara Anda mengelola pemuatan iklan. Untuk mengoptimalkan performa menggunakan pramuat iklan, nonaktifkan cache kustom dan delegasikan tanggung jawab tersebut ke Google Mobile Ads Flutter 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 menampilkannya.
  • Pemuatan ulang otomatis: otomatis memuat iklan baru saat Anda menarik iklan dari cache.
  • Percobaan ulang terkelola: otomatis mencoba ulang permintaan yang gagal menggunakan backoff eksponensial.
  • Penanganan masa berlaku: otomatis memperbarui iklan sebelum masa berlakunya habis (biasanya setelah satu jam).
  • Pengoptimalan cache: jika Anda menggunakan ukuran cache yang lebih besar dari satu, Google Mobile Ads Flutter Plugin akan 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 ini, Anda harus menyiapkan Google Mobile Ads Flutter Plugin.

Mulai mem-pramuat iklan

Saat aplikasi dimulai, panggil metode start sekali. Setelah Anda memanggil metode start, Google Mobile Ads Flutter Plugin akan otomatis memuat iklan di awal dan mencoba ulang permintaan yang gagal untuk konfigurasi yang dimuat di awal.

Contoh berikut memulai pramuat iklan:

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

Ganti _adUnitId dengan ID unit iklan Anda.

Mendapatkan dan menampilkan iklan yang sudah dipramuat

Saat menggunakan pramuat iklan, Google Mobile Ads Flutter Plugin menyimpan iklan yang di-cache. Jika Anda ingin menampilkan iklan, panggil metode pollAd. Google Mobile Ads Flutter Plugin mengambil iklan yang tersedia dan otomatis memuat data iklan berikutnya di latar belakang.

Hindari memanggil metode pollAd sampai Anda siap menampilkan iklan. Dengan menyimpan iklan di cache, Google Mobile Ads Flutter Plugin dapat otomatis memperbarui iklan yang sudah tidak berlaku dan melakukan pengoptimalan cache.

Contoh berikut mengambil dan menampilkan iklan yang dipramuat:

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

Memeriksa ketersediaan iklan pra-pemuatan

Untuk memeriksa ketersediaan iklan, pilih salah satu opsi berikut:

Mendapatkan ketersediaan iklan yang sudah dipramuat

Contoh berikut memeriksa ketersediaan iklan:

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

Memproses ketersediaan iklan yang sudah dipramuat

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

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

  • Jangan memanggil start.
  • Hindari memanggil pollAd kecuali jika iklan akan segera ditampilkan.

Contoh berikut mendaftarkan peristiwa iklan:

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');
    },
  ),
);

Menghentikan pramuat iklan

Jika Anda tidak perlu menampilkan iklan untuk ID pramuat lagi dalam sesi, Anda dapat berhenti melakukan pramuat iklan. Untuk berhenti melakukan pramuat iklan untuk ID pramuat tertentu, panggil destroy dengan ID pramuat. Untuk menghentikan pramuat untuk semua pra-pemuat, panggil destroyAll.

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

Menetapkan ukuran buffer

Ukuran buffer mengontrol jumlah iklan yang dipramuat dan disimpan dalam memori. Secara default, Google mengoptimalkan ukuran buffer untuk menyeimbangkan pemakaian memori dan latensi penayangan iklan. Jika aplikasi Anda menampilkan iklan sebelum iklan berikutnya dimuat, Anda dapat menetapkan ukuran buffering kustom untuk meningkatkan jumlah iklan yang disimpan dalam memori.

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

Batas cache pramuat

Google Mobile Ads Flutter Plugin menerapkan batas di seluruh aplikasi untuk jumlah total iklan yang dipramuat di semua unit iklan dan ID pramuat:

  • Batas default: Google Mobile Ads Flutter Plugin menyimpan maksimum 6 iklan yang dipramuat dalam memori. Batas ini berlaku untuk semua format dan ID pramuat.
  • Sebaiknya pertahankan ukuran buffering dua untuk setiap ID pramuat.