Yerel reklam ve banner reklam isteklerini birleştirme

Kodunuzda birkaç değişiklik yaparak reklam isteklerinizde yerel ve banner reklamları birleştirebilirsiniz.

Ön koşullar

Reklam yükleme

Birleştirilmiş bir yerel ve banner isteği oluşturmak için aşağıdakileri yapın:

  1. NativeAdRequest içinde hem NativeAdType.NATIVE türünü hem de NativeAdType.BANNER türünü liste olarak iletin.

  2. En az bir banner reklam boyutu ayarlayın.

Aşağıdaki örneklerde birleştirilmiş bir doğal reklam ve banner reklam yüklenmektedir:

Kotlin

val adRequest =
  NativeAdRequest.Builder(AD_UNIT_ID, listOf(NativeAdType.NATIVE, NativeAdType.BANNER))
    // Use setAdSize() or setAdSizes() depending on if you want multiple ad sizes or not.
    .setAdSizes(listOf(AdSize.BANNER, AdSize.LARGE_BANNER))
    .build()

// Load the native and banner ad with the ad request and callback.
NativeAdLoader.load(adRequest, getNativeAdLoaderCallback())

Java

NativeAdRequest adRequest =
    new NativeAdRequest.Builder(AD_UNIT_ID, List.of(NativeAdType.NATIVE, NativeAdType.BANNER))
        // Use setAdSize() or setAdSizes() depending on if you want multiple ad sizes or not.
        .setAdSizes(Arrays.asList(AdSize.BANNER, AdSize.LARGE_BANNER))
        .build();

// Load the native and banner ad with the ad request and callback.
NativeAdLoader.load(adRequest, getNativeAdLoaderCallback());

Cihaz ekranı boyutundan küçük veya ona eşit bir reklam boyutu ayarlayın. Maksimum ekran boyutunu belirlemek için Resources.getDisplayMetrics yöntemini kullanın. AdSize nesne boyutları, yoğunluktan bağımsız pikseller (dp) kullanır. Karşılaştırma yaparken ekran boyutunu pikselden dp'ye dönüştürün. Boyut kısıtlamaları hakkında ayrıntılı bilgi için Ad Manager'da doldurulmayan gösterimlerle ilgili sorunları giderme başlıklı makaleyi inceleyin.

Reklamı NativeAdLoaderCallback nesnesinden alın

Başarıyla yüklenen reklamın türüne bağlı olarak NativeAdLoaderCallback nesnesi, doğal reklamlar için onNativeAdLoaded() yöntemini, banner reklamlar için ise onBannerAdLoaded() yöntemini çağırır.

Aşağıdaki örnekte banner veya doğal reklamlar alınmaktadır:

Kotlin

private fun getNativeAdLoaderCallback(): NativeAdLoaderCallback {
  return object : NativeAdLoaderCallback {
    override fun onNativeAdLoaded(nativeAd: NativeAd) {
      // Called when a native ad has loaded.
    }

    override fun onBannerAdLoaded(bannerAd: BannerAd) {
      // Called when a banner ad has loaded.
    }
  }
}

Java

private NativeAdLoaderCallback getNativeAdLoaderCallback() {
  return new NativeAdLoaderCallback() {
    @Override
    public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
      // Called when a native ad has loaded.
    }

    @Override
    public void onBannerAdLoaded(@NonNull BannerAd bannerAd) {
      // Called when a banner ad has loaded.
    }
  };
}