Banner reklamlar

Banner reklamlar, uygulama düzeninin bir kısmını kaplayan dikdörtgen reklamlardır. Onlar Kullanıcılar uygulamayla etkileşim kurarken ekranda kalır. kullanıcı sayfayı kaydırırken içerikle satır içi şekilde ayarlayabilirsiniz. Banner reklamlar, belirli bir süre sonra otomatik olarak yenilenebilir. Daha fazla bilgi için Banner reklamlara genel bakış başlıklı makaleyi inceleyin.

Bu kılavuzda, belirttiğiniz reklam genişliğini kullanarak reklam boyutunu her cihaz için optimize ederek performansı en üst düzeye çıkaran sabitlenmiş uyarlanabilir banner reklamları kullanmaya nasıl başlayacağınız açıklanmaktadır.

Sabit uyarlanabilir banner reklamlar, normal reklamlar yerine sabit en boy oranlı reklamlardır. sabit boyutlu reklamlar En boy oranı, 320x50 endüstri standardına benzer. Bir kez mümkün olan tam genişliği belirtirseniz, bu değer size optimum belirlemektir. Optimum yükseklik, aynı cihazdan gelen isteklerde değişmez ve reklam yenilendiğinde çevredeki görünümlerin hareket etmesine gerek yoktur.

Ön koşullar

Her zaman test reklamlarıyla test yapın

Uygulamalarınızı oluştururken ve test ederken, uygulamalarınızın yanı sıra üretim reklamlarıdır. Aksi takdirde hesabınız askıya alınabilir.

Test reklamlarını yüklemenin en kolay yolu, aşağıdakiler için özel test reklam birimi kimliğimizi kullanmaktır: Android banner'ları:

/21775744923/example/adaptive-banner

Her istek için test reklamları döndürecek şekilde özel olarak yapılandırılmıştır. Kodlama, test etme ve hata ayıklama sırasında kendi uygulamalarınızda kullanabilirsiniz. Tek yapmanız gereken uygulamanızı yayınlamadan önce bunu kendi reklam birimi kimliğinizle değiştirin.

Mobile Ads SDK'sının test reklamlarının işleyiş şekli hakkında daha fazla bilgi için Test Reklamlar.

AdManagerAdView'u düzene ekleme

Banner göstermenin ilk adımı, AdManagerAdView değişiklik yapabilirsiniz:

Java

// Create a new ad view.
adView = new AdManagerAdView(this);
adView.setAdUnitId(AD_UNIT);
adView.setAdSize(getAdSize());

// Replace ad container with new ad view.
adContainerView.removeAllViews();
adContainerView.addView(adView);

Kotlin

// Create a new ad view.
val adView = AdManagerAdView(this)
adView.adUnitId = AD_UNIT_ID
adView.setAdSize(adSize)
this.adView = adView

// Replace ad container with new ad view.
binding.adViewContainer.removeAllViews()
binding.adViewContainer.addView(adView)

Reklam yükle

AdManagerAdView uygulandıktan sonraki adım bir reklam yükleyin. Bu, loadAd() ile yapılır. yöntemini AdManagerAdView sınıfında bulabilirsiniz. Tek bir reklam isteğiyle ilgili hedefleme bilgileri gibi çalışma zamanı bilgilerini içeren bir AdManagerAdRequest parametresi alır.

Aşağıda, reklamların nasıl yükleneceğini gösteren bir örnek verilmiştir:

Java

// Start loading the ad in the background.
AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder().build();
adView.loadAd(adRequest);

Kotlin

// Start loading the ad in the background.
val adRequest = AdManagerAdRequest.Builder().build()
adView.loadAd(adRequest)

Reklam yüklenemezse, izin verileceğinde açıkça başka bir reklam istemenize reklam biriminizi yenilenecek şekilde yapılandırdığınız sürece; Google Mobile Ads SDK'sı Ad Manager'de belirttiğiniz yenileme hızına uyar web arayüzü. Yenilemeyi etkinleştirmediyseniz yeni bir istek göndermeniz gerekir.

İşte bu kadar. Uygulamanız artık banner reklam göstermeye hazır.

Reklam etkinlikleri

Reklamın yaşam döngüsünde bir dizi etkinliği dinleyebilirsiniz. Bu işlemler arasında yükleme, reklam gösterimi ve tıklamasının yanı sıra reklam açma ve kapatma etkinlikleri. Bu işlem önerilir geri çağırmayı deneyin.

Java

adView.setAdListener(new AdListener() {
    @Override
    public void onAdClicked() {
      // Code to be executed when the user clicks on an ad.
    }

    @Override
    public void onAdClosed() {
      // Code to be executed when the user is about to return
      // to the app after tapping on an ad.
    }

    @Override
    public void onAdFailedToLoad(LoadAdError adError) {
      // Code to be executed when an ad request fails.
    }

    @Override
    public void onAdImpression() {
      // Code to be executed when an impression is recorded
      // for an ad.
    }

    @Override
    public void onAdLoaded() {
      // Code to be executed when an ad finishes loading.
    }

    @Override
    public void onAdOpened() {
      // Code to be executed when an ad opens an overlay that
      // covers the screen.
    }
});

Kotlin

adView.adListener = object: AdListener() {
    override fun onAdClicked() {
      // Code to be executed when the user clicks on an ad.
    }

    override fun onAdClosed() {
      // Code to be executed when the user is about to return
      // to the app after tapping on an ad.
    }

    override fun onAdFailedToLoad(adError : LoadAdError) {
      // Code to be executed when an ad request fails.
    }

    override fun onAdImpression() {
      // Code to be executed when an impression is recorded
      // for an ad.
    }

    override fun onAdLoaded() {
      // Code to be executed when an ad finishes loading.
    }

    override fun onAdOpened() {
      // Code to be executed when an ad opens an overlay that
      // covers the screen.
    }
}

Bu ayardaki geçersiz kılınabilir yöntemlerin her biri, AdListener bir reklamın yaşam döngüsündeki bir etkinliğe karşılık gelir.

Geçersiz kılınabilir yöntemler
onAdClicked() onAdClicked() yöntemi çağrılır.
onAdClosed() onAdClosed() yöntemi çağrılır. Kullanıcı bir reklamın hedef URL'yi ekleyin. Uygulamanız, askıya alınmış etkinlikleri devam ettirmek veya etkileşime hazır hale gelmek için gereken diğer işlemleri yapmak için bu izni kullanabilir.
onAdFailedToLoad() onAdFailedToLoad() yöntemi, parametre içeren tek yöntemdir. Şu türdeki hata parametresi: LoadAdError, hangi hatanın oluştuğunu açıklar. Daha fazla bilgi için Daha fazla bilgi için Reklam Yükü Hatalarını Ayıklama dokümanlarına göz atın.
onAdImpression() onAdImpression() yöntemi çağrılır.
onAdLoaded() onAdLoaded() yöntemi, reklamın yüklenmesi bittiğinde yürütülür. Gecikmeli olarak AdManagerAdView ekleniyor siz bir reklamın yükleneceğinden emin olana kadar etkinliğinize veya parçanıza Bunu burada yapabilirsiniz.
onAdOpened() onAdOpened() yöntemi çağrılır.

Video reklamlar için donanım hızlandırma

Video reklamların banner reklam görünümlerinde başarılı bir şekilde gösterilmesi için donanım için etkinleştirilmelidir.

Donanım hızlandırma varsayılan olarak etkindir ancak bazı uygulamalar somut olarak ortaya koyar. Bu durum uygulamanız için geçerliyse reklam kullanan Activity sınıfları için donanım hızlandırmayı etkinleştirmenizi öneririz.

Donanım hızlandırmayı etkinleştirme

Uygulamanız, donanım hızlandırması genel olarak açıkken düzgün çalışmıyorsa bu ayarı ayrı etkinlikler için de kontrol edebilirsiniz. Donanım hızlandırmayı etkinleştirmek veya devre dışı bırakmak için AndroidManifest.xml'inizdeki <application> ve <activity> öğeleri için android:hardwareAccelerated özelliğini kullanabilirsiniz. Aşağıdaki örnekte, uygulamanın tamamı için hızlandırma ancak tek bir etkinlik için devre dışı bırakma:

<application android:hardwareAccelerated="true">
    <!-- For activities that use ads, hardwareAcceleration should be true. -->
    <activity android:hardwareAccelerated="true" />
    <!-- For activities that don't use ads, hardwareAcceleration can be false. -->
    <activity android:hardwareAccelerated="false" />
</application>

Bkz. Donanım hızlandırma rehberini inceleyin. donanım hızlandırmayı denetleme seçenekleri hakkında bilgi edinin. Lütfen tek reklam görünümleri, etkinlik için devre dışı bırakıldığından, etkinlikte donanım hızlandırmanın da etkinleştirilmiş olması gerekir.

Manuel gösterim sayma

Manuel gösterim sayma yalnızca doğrudan Ad Manager'da trafiğe eklenen reklam öğelerinin bulunduğu doğrudan satılan ve kurumsal kampanyalarla uyumludur. Bu videoda Bu reklamlar, dolgu veya üçüncü taraf ağ reklamları için kullanılır. Daha fazla bilgi için Gösterimleri ve tıklamaları sayma başlıklı makaleyi inceleyin.

Özel bir feed'iniz varsa gösterim ping'lerini Ad Manager'a bir gösterimin ne zaman kaydedileceğine ilişkin koşullar içerir. Bunu yapmak için Reklam yüklenmeden önceki manuel gösterimler için AdManagerAdRequest:

Java

AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder()
    .setManualImpressionsEnabled(true)
    .build();

Kotlin

val adRequest = AdManagerAdRequest.Builder()
    .setManualImpressionsEnabled(true)
    .build()

Bir reklamın başarıyla döndürüldüğünü ve ekranda gösterildiğini tespit ettiğinizde, bir gösterimi manuel olarak kaydedebilirsiniz:

Java

{ ad_view }.recordManualImpression();

Kotlin

AdManagerAdView.recordManualImpression()

Uygulama etkinlikleri

Uygulama etkinlikleri, çocuğunuzun uygulama koduna mesaj gönderebilen reklamlar oluşturmanıza olanak tanır. Uygulama Ardından, bu mesajlara dayalı olarak işlem yapabilir.

AppEventListener kullanarak Ad Manager'a özgü uygulama etkinliklerini dinleyebilirsiniz. Bu etkinlikler, reklamın yaşam döngüsü sırasında dilediğiniz zaman (onAdLoaded() çağrılmadan önce bile) gerçekleşebilir.

Java

public interface AppEventListener {
  void onAppEvent(String name, String info);
}

Kotlin

interface AppEventListener {
    fun onAppEvent(name: String, info: String)
}

Bir uygulama etkinliği gerçekleştiğinde void onAppEvent(String name, String info) çağrılır daha fazla bilgi edineceksiniz. Bu arayüz, etkinliğiniz veya başka herhangi bir nesne:

Java

import com.google.android.gms.ads.admanager.*;

public class BannerExample extends Activity implements AppEventListener {
}

Kotlin

import com.google.android.gms.ads.admanager.*

class BannerExample : Activity(), AppEventListener {
}

ve ardından AdManagerAdView cihazına iletildi:

Java

AdManagerAdView.setAppEventListener(this);

Kotlin

AdManagerAdView.appEventListener = this

Uygulamanızın arka plan rengini nasıl değiştireceğinizi gösteren bir örneği aşağıda bulabilirsiniz renk adlı bir uygulama etkinliğine bağlı olarak şunları yapabilirsiniz:

Java

@Override
public void onAppEvent(String name, String info) {
  if ("color".equals(name)) {
    if ("green".equals(info)) {
      // Set background color to green.
    } else if ("blue".equals(info)) {
      // Set background color to blue.
    } else {
      // Set background color to black.
    }
  }
}

Kotlin

override fun onAppEvent(name: String?, info: String?) {
    if (name == "color") {
        when (info) {
            "green" -> {
                // Set background color to green.
            }
            "blue" -> {
                // Set background color to blue.
            }
            else -> {
                // Set background color to black.
            }
        }
    }
}

Burada da, renk uygulama etkinliği mesajlarını şuraya gönderen ilgili reklam öğesi İşleyici:

<html>
<head>
  <script src="//www.gstatic.com/afma/api/v1/google_mobile_app_ads.js"></script>
  <script>
    document.addEventListener("DOMContentLoaded", function() {
      // Send a color=green event when ad loads.
      admob.events.dispatchAppEvent("color", "green");

      document.getElementById("ad").addEventListener("click", function() {
        // Send a color=blue event when ad is clicked.
        admob.events.dispatchAppEvent("color", "blue");
      });
    });
  </script>
  <style>
    #ad {
      width: 320px;
      height: 50px;
      top: 0px;
      left: 0px;
      font-size: 24pt;
      font-weight: bold;
      position: absolute;
      background: black;
      color: white;
      text-align: center;
    }
  </style>
</head>
<body>
  <div id="ad">Carpe diem!</div>
</body>
</html>

Uygulama etkinliklerinin uygulanması için: API Demo uygulaması.

Java Kotlin

Ek kaynaklar

GitHub'daki örnekler

  • Sabit uyarlanabilir banner reklam örneği: Java | Kotlin

Sonraki adımlar

Daraltılabilir banner'lar

Daraltılabilir banner reklamlar, başlangıçta daha büyük bir boyutta daraltmayı sağlayacak bir düğme bulunan yer paylaşımlı reklam. Şunu kullanabilirsiniz: kullanarak performansınızı daha da optimize edebilirsiniz. Daha fazla bilgi için daraltılabilir banner reklamlar konusuna bakın.

Satır içi uyarlanabilir banner'lar

Satır içi uyarlanabilir banner'lar, sabit uyarlanabilir banner'lara kıyasla daha büyük ve daha uzundur banner'lar. Değişken yükseklikte ve cihaz ekranı kadar uzun olabilir. Satır içi uyarlanabilir banner'lar, şunun için sabit uyarlanabilir banner reklamların yerine önerilir: Kaydırılabilir içeriğe banner reklam yerleştiren uygulamalar. Daha fazla bilgi için satır içi uyarlanabilir banner'lara bakın.

Diğer konuları keşfedin