Menggabungkan Permintaan Iklan Banner yang Dirender Kustom dan Iklan Banner

Dengan beberapa perubahan pada kode, Anda dapat menggabungkan iklan native dan banner dalam permintaan iklan.

Prasyarat

  • Google Mobile Ads SDK versi 11.0.0 atau yang lebih tinggi.
  • Selesaikan Mulai.

Memuat iklan

Iklan native yang dirender kustom dimuat menggunakan class AdLoader, yang memiliki class AdLoader.Builder-nya sendiri untuk menyesuaikannya selama pembuatan. Dengan menambahkan pemroses ke AdLoader saat mem-build-nya, aplikasi menentukan jenis format iklan yang siap diterimanya. AdLoader kemudian hanya meminta jenis tersebut.

Objek AdLoader juga dapat dikonfigurasi untuk membuat permintaan iklan yang dapat menghasilkan iklan banner atau iklan native. Menambahkan OnAdManagerAdViewLoadedListener ke AdLoader saat membuatnya akan menentukan bahwa iklan banner harus bersaing dengan iklan native untuk memenuhi permintaan.

Kode berikut menunjukkan cara mem-build AdLoader yang dapat memuat iklan native atau banner dalam satu permintaan:

Java

AdLoader adLoader = new AdLoader.Builder(context, "/21775744923/example/native-and-banner")
    .forNativeAd(new NativeAd.OnNativeAdLoadedListener() {
      @Override
      public void onNativeAdLoaded(NativeAd nativeAd) {
        // Show the ad.
      }
    })
    .forAdManagerAdView(new OnAdManagerAdViewLoadedListener() {
      @Override
      public void onAdManagerAdViewLoaded(AdManagerAdView adView) {
        // Show the banner ad.
      }
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(new AdListener() {
      @Override
      public void onAdFailedToLoad(LoadAdError error) {
        // Handle the failure by logging, altering the UI, and so on.
      }
    })
    .withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build();

Kotlin

val adLoader = AdLoader.Builder(this, "/21775744923/example/native-and-banner")
    .forNativeAd { nativeAd ->
      // Show the ad.
    }
    .forAdManagerAdView({ adView ->
      // Show the banner ad.
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(object: AdListener() {
      override fun onAdFailedToLoad(adError: LoadAdError) {
        // Handle the failure by logging, altering the UI, and so on.
      }
    })
    .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build()

Metode forAdManagerAdView() di atas menyiapkan AdLoader untuk menerima iklan banner. Daftar ukuran iklan valid dengan panjang variabel harus ditentukan bersama OnAdManagerAdViewLoadedListener saat memanggil forAdManagerAdView().

Untuk membuat permintaan iklan yang valid, setidaknya satu ukuran iklan yang valid harus ditentukan. Saat iklan banner berhasil dimuat, metode onAdManagerAdViewLoaded() objek pemroses yang ditentukan akan dipanggil.

Menetapkan AdViewOptions

Fungsi terakhir yang disertakan dalam pembuatan AdLoader di atas adalah metode opsional lain, withAdManagerAdViewOptions():

Java

.withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

Kotlin

.withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

Objek AdManagerAdViewOptions memungkinkan penayang menetapkan opsi tertentu untuk banner yang dimuat oleh AdLoader, seperti:

setManualImpressionsEnabled()
Mengaktifkan pelaporan tayangan manual untuk reservasi Google Ad Manager. Aplikasi yang menggunakan tayangan manual dapat menentukan sendiri kapan tayangan harus dicatat, dan dapat melakukannya dengan memanggil AdManagerAdView.recordManualImpression().