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. Bkz. Banner reklamlara genel bakış konulu videomuzu izleyin.

Bu kılavuzda, sabit uyarlanabilir banner'ı nasıl kullanmaya başlayacağınız gösterilmektedir reklamlar, reklam boyutunu her cihaz için optimize ederek performansı artıran belirttiğiniz reklam genişliğidir.

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, (reklam gösterildiğinde, etrafındaki görünümlerin hareket etmesine gerek yoktur) yenilenir.

Ön koşullar

Her zaman test reklamlarıyla test etme

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ı:

ca-app-pub-3940256099942544/9214589741

Her istek için test reklamı döndürecek şekilde özel olarak yapılandırılmıştır. kod yazma, 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.

Düzene AdView ekleme

Banner göstermenin ilk adımı, AdView Activity veya Fragment düzeninde görünmesini istediğiniz sürece .:

Java

private AdSize getAdSize() {
  // Determine the screen width (less decorations) to use for the ad width.
  Display display = getWindowManager().getDefaultDisplay();
  DisplayMetrics outMetrics = new DisplayMetrics();
  display.getMetrics(outMetrics);

  float density = outMetrics.density;

  float adWidthPixels = adContainerView.getWidth();

  // If the ad hasn't been laid out, default to the full screen width.
  if (adWidthPixels == 0) {
    adWidthPixels = outMetrics.widthPixels;
  }

  int adWidth = (int) (adWidthPixels / density);
  return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth);
}

private void loadBanner() {
  
  // Create a new ad view.
  AdView adView = new AdView(this);
  adView.setAdSizes(getAdSize());
  adView.setAdUnitId("ca-app-pub-3940256099942544/9214589741");

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

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

Kotlin


// Determine the screen width (less decorations) to use for the ad width.
// If the ad hasn't been laid out, default to the full screen width.
private val adSize: AdSize
  get() {
    val display = windowManager.defaultDisplay
    val outMetrics = DisplayMetrics()
    display.getMetrics(outMetrics)

    val density = outMetrics.density

    var adWidthPixels = binding.adViewContainer.width.toFloat()
    if (adWidthPixels == 0f) {
      adWidthPixels = outMetrics.widthPixels.toFloat()
    }

    val adWidth = (adWidthPixels / density).toInt()
    return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth)
  }

private fun loadBanner() {
  
  // Create a new ad view.
  val adView = AdView(this)
  adView.adSizes = adSize
  adView.adUnitId = "ca-app-pub-3940256099942544/9214589741"

  // Create an ad request.
  val adRequest = AdRequest.Builder().build()

  // Start loading the ad in the background.
  adView.loadAd(adRequest)
}

Reklam yükle

AdView yerleştirildikten sonra, sıradaki adım bir reklam yükleyin. Bu, loadAd() ile yapılır. yöntemini çağırın.AdView AdRequest gerekir parametresine sahip olan parametredir. Bu parametre, belirli bir tek reklam isteği.

Aşağıda, bir reklamın onCreate() yönteminde nasıl yükleneceğini gösteren bir Activity:

Java

private void loadBanner() {
  // Create a new ad view.
  adView = new AdView(this);
  adView.setAdUnitId(AD_UNIT);
  adView.setAdSize(getAdSize());
  
  // Replace ad container with new ad view.
  adContainerView.removeAllViews();
  adContainerView.addView(adView);

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

Kotlin

private fun loadBanner() {
  // This is an ad unit ID for a test ad. Replace with your own banner ad unit ID.
  adView.adUnitId = "/6499/example/banner"
  adView.setAdSize(adSize)
  
  // Create an ad request.
  val adRequest = AdRequest.Builder().build()

  // Start loading the ad in the background.
  adView.loadAd(adRequest)
}

Reklamınız yüklenemiyorsa, başka bir reklam için açıkça istekte bulunmanıza gerek reklam biriminizi yenilenecek şekilde yapılandırdığınız sürece; Google Mobile Ads SDK'sı AdMob'da belirttiğiniz yenileme hızına uyar. web arayüzü. Yenilemeyi etkinleştirmediyseniz yeni bir isteği gönderin.

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

Reklam etkinlikleri

Reklamın yaşam döngüsünde birtakım etkinlikleri 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 tıklayın. Uygulamanız, askıya alınmış etkinlikleri devam ettirmek veya etkileşime hazır hale getirmek için gereken diğer işleri yapar. Daha fazla bilgi için AdMob Reklam işleyici yöntemlerinin Android API Demo uygulaması.
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 AdView ekleniyor siz bir reklamın yükleneceğinden emin olana kadar etkinliğinize veya parçanıza Bunu burada yapabilirsiniz.
onAdOpened() onAdOpened() yöntemi, reklam ekranı kaplayan bir yer paylaşımını açtığında ç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 şunun için donanım hızlandırmayı etkinleştirmenizi öneririz: Reklam kullanan Activity sınıf.

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

Donanım hızlandırma etkinken uygulamanız düzgün çalışmıyorsa bunu bağımsız etkinlikler için de kontrol edebilirsiniz. Etkinleştirmek veya donanım hızlandırmayı devre dışı bırakmak için android:hardwareAccelerated özelliğinin <application> ve <activity> öğeleri AndroidManifest.xml içinde bulabilirsiniz. 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.

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. Bkz. Satır içi uyarlanabilir daha fazla bilgi için bolca fırsat sunuyor.

Diğer konuları keşfedin