Kodunuzda birkaç değişiklik yaparak reklam isteklerinizde yerel ve banner reklamları birleştirebilirsiniz.
Ön koşullar
- Google Mobile Ads SDK'sının 11.0.0 veya daha yeni bir sürümü.
- Başlayın bölümünü tamamlayın.
Reklamın yüklenmesi
Özel olarak oluşturulmuş yerel reklamlar, oluşturulma sırasında özelleştirilebilecek kendi AdLoader.Builder
sınıfına sahip olan AdLoader
sınıfı kullanılarak yüklenir. Bir uygulama, AdLoader
'yi oluştururken dinleyiciler ekleyerek hangi reklam biçimi türlerini almaya hazır olduğunu belirtir. AdLoader
daha sonra yalnızca bu türleri ister.
AdLoader
nesnesi, banner reklam veya yerel reklamla sonuçlanabilecek reklam istekleri yapacak şekilde de yapılandırılabilir. Oluşturma sırasında AdLoader
öğesine OnAdManagerAdViewLoadedListener
eklemek, banner reklamların isteği karşılamak için yerel reklamlarla rekabet etmesi gerektiğini belirtir.
Aşağıdaki kodda, tek bir istekle doğal veya banner reklam yükleyebilecek bir AdLoader
'nin nasıl oluşturulacağı gösterilmektedir:
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()
Yukarıdaki forAdManagerAdView()
yöntemi, AdLoader
öğesini banner reklam almaya hazırlar. forAdManagerAdView()
çağrılırken OnAdManagerAdViewLoadedListener
ile birlikte geçerli reklam boyutlarının değişken uzunlukta bir listesi belirtilmelidir.
Geçerli bir reklam isteği göndermek için en az bir geçerli reklam boyutu belirtilmelidir. Bir banner reklam başarıyla yüklendiğinde, belirtilen dinleyici nesnesinin onAdManagerAdViewLoaded()
yöntemi çağrılır.
AdViewOptions ayarlama
Yukarıdaki AdLoader
değerinin oluşturulmasına dahil edilen son işlev, withAdManagerAdViewOptions()
adlı başka bir isteğe bağlı yöntemdir:
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()
AdManagerAdViewOptions
nesnesi, yayıncıların AdLoader
tarafından yüklenen banner'lar için belirli seçenekler belirlemesine olanak tanır. Örneğin:
setManualImpressionsEnabled()
- Google Ad Manager rezervasyonları için manuel gösterim raporlamasını etkinleştirir. Manuel gösterim kullanan uygulamalar, bir gösterimin ne zaman kaydedileceğini kendileri belirleyebilir ve bunu
AdManagerAdView.recordManualImpression()
çağrısını yaparak yapabilir.