Bu kılavuzda, Android uygulamasına sabit uyarlanabilir banner reklam yükleme işlemi ele alınmaktadır.
Ön koşullar
- Başlangıç kılavuzunu tamamlayın.
Her zaman test reklamlarıyla test edin
Uygulamalarınızı oluşturup test ederken canlı üretim reklamları yerine test reklamları kullandığınızdan emin olun. Bunu yapmazsanız hesabınız askıya alınabilir.
Test reklamlarını yüklemenin en kolay yolu, Android banner'lar için özel test reklam birimi kimliğimizi kullanmaktır:
ca-app-pub-3940256099942544/9214589741
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. Uygulamanızı yayınlamadan önce bu kimliği kendi reklam birimi kimliğinizle değiştirdiğinizden emin olun.
Google Mobile Ads SDK'sının test reklamlarının işleyiş şekli hakkında daha fazla bilgi için Test reklamları etkinleştirme başlıklı makaleyi inceleyin.
Reklam görünümü kapsayıcısını tanımlama
Yerleştirilmiş uyarlanabilir banner reklamınızın kapsayıcısı olarak kullanılacak bir görünümü sayfa düzeni XML dosyanıza ekleyin:
<!-- Ad view container that fills the width of the screen and adjusts its
height to the content of the ad. -->
<FrameLayout
android:id="@+id/ad_view_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_alignParentBottom="true" />
Reklam boyutunu ayarlama
AdSize
öğesini, belirtilen genişliğe sahip sabit bir uyarlanabilir banner türü olarak ayarlayın:
Java
// Request an anchored adaptive banner with a width of 360.
adView.setAdSize(AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, 360));
Kotlin
// Request an anchored adaptive banner with a width of 360.
adView.setAdSize(AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, 360))
Düzene AdView
ekleme
Uygulamanızın düzenine eklemek için reklam boyutunu kullanarak bir AdView
oluşturun:
Java
// Create a new ad view.
adView = new AdView(this);
adView.setAdUnitId(AD_UNIT_ID);
// Request an anchored adaptive banner with a width of 360.
adView.setAdSize(AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, 360));
// Replace ad container with new ad view.
adContainerView.removeAllViews();
adContainerView.addView(adView);
Kotlin
// Create a new ad view.
val adView = AdView(this)
adView.adUnitId = AD_UNIT_ID
// Request an anchored adaptive banner with a width of 360.
adView.setAdSize(AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, 360))
this.adView = adView
// Replace ad container with new ad view.
binding.adViewContainer.removeAllViews()
binding.adViewContainer.addView(adView)
Reklam yükleme
AdView
yerleştirildikten sonra bir reklam yüklemeniz gerekir. Bu işlem, AdView
sınıfındaki loadAd()
yöntemiyle yapılır. Tek bir reklam isteğiyle ilgili hedefleme bilgileri gibi çalışma zamanı bilgilerini içeren bir AdRequest
parametresi alır.
Reklamın nasıl yükleneceğini gösteren bir örnek aşağıda verilmiştir:
Java
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
Kotlin
val adRequest = AdRequest.Builder().build()
adView.loadAd(adRequest)
İşlem başarılı olursa uygulamanız banner reklam göstermeye hazırdır.
Reklamı yenileme
Reklam biriminizi yenilenecek şekilde yapılandırdıysanız reklam yüklenmezse başka bir reklam istemeniz gerekmez. Google Mobile Ads SDK'sı, AdMob kullanıcı arayüzünde belirttiğiniz tüm yenileme hızlarına uyar. Yenilemeyi etkinleştirmediyseniz yeni bir istek gönderin. Reklam birimi yenileme hakkında daha fazla bilgi (ör. yenileme hızı ayarlama) için Banner reklamlar için otomatik olarak yenileme özelliğini kullanma başlıklı makaleyi inceleyin.
Reklam etkinlikleri
Reklamın yaşam döngüsünde yükleme, reklam gösterimi ve tıklama ile reklam açma ve kapama etkinlikleri gibi çeşitli etkinlikleri dinleyebilirsiniz. Geri aramayı banner yüklemeden önce ayarlamanız önerilir.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.
}
}
AdListener
bölümündeki geçersiz kılınabilir yöntemlerin her biri, 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, bir reklam için tıklama kaydedildiğinde çağrılır.
|
onAdClosed() |
onAdClosed() yöntemi, kullanıcı bir reklamın hedef URL'sini görüntüledikten sonra uygulamaya geri döndüğünde çağrılır. Uygulamanız, askıya alınan etkinlikleri devam ettirmek veya etkileşime hazır hale gelmek için gereken diğer işlemleri yapmak için bu izni kullanabilir.
Android API Demo uygulamasında reklam dinleyici yöntemlerinin uygulanması için AdMob AdListener örneğine bakın.
|
onAdFailedToLoad() |
onAdFailedToLoad()
yöntemi, parametre içeren tek yöntemdir. LoadAdError türündeki hata parametresi, hangi hatanın oluştuğunu açıklar. Daha fazla bilgi için Reklam Yükleme Hatalarını Hata Ayıklama belgelerine bakın.
|
onAdImpression() |
onAdImpression() yöntemi, bir reklam için gösterim kaydedildiğinde çağrılır.
|
onAdLoaded() |
onAdLoaded()
yöntemi, bir reklamın yüklenmesi tamamlandığında yürütülür. Bir reklamın yükleneceğinden emin olana kadar AdView
öğesini etkinliğinize veya parçanıza eklemeyi geciktirmek isterseniz bunu buradan yapabilirsiniz.
|
onAdOpened() |
onAdOpened()
yöntemi, bir reklam ekranı kaplayan bir yer paylaşımı açtığında çağrılır.
|
Video reklamlar için donanım hızlandırma
Video reklamların banner reklam görüntülemelerinizde başarılı bir şekilde gösterilebilmesi için donanım hızlandırması etkinleştirilmiş olmalıdır.
Donanım hızlandırma varsayılan olarak etkindir ancak bazı uygulamalar bunu devre dışı bırakabilir. 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 etkinken 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 donanım hızlandırması etkinleştirilir ancak bir etkinlik için devre dışı bırakılır:
<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>
Donanım hızlandırmayı kontrol etme seçenekleri hakkında daha fazla bilgi için Donanım hızlandırma kılavuzuna göz atın. Etkinlik devre dışıysa ayrı reklam görüntülemelerinin donanım hızlandırma için etkinleştirilemeyeceğini unutmayın. Bu nedenle, etkinliğin kendisinde donanım hızlandırmanın etkinleştirilmesi gerekir.
Ek kaynaklar
GitHub'daki örnekler
Sonraki adımlar
Daraltılabilir banner'lar
Daraltılabilir banner reklamlar, başlangıçta daha büyük bir yer paylaşımı olarak sunulan ve reklamı daha küçük bir boyuta daraltmaya yarayan bir düğme içeren banner reklamlardır. Performansınızı daha da optimize etmek için bu özelliği kullanabilirsiniz. Daha fazla bilgi için daraltılabilir banner reklamlar bölümüne bakın.
Satır içi uyarlanabilir banner'lar
Satır içi uyarlanabilir banner'lar, sabit uyarlanabilir banner'lara kıyasla daha geniş ve daha uzun banner'lardır. Değişken yükseklikte olan bu banner'lar cihaz ekranı kadar uzun olabilir. Banner reklamları kaydırılabilir içeriğe yerleştiren uygulamalar için sabit uyarlanabilir banner reklamlar yerine satır içi uyarlanabilir banner'lar önerilir. Daha fazla bilgi için satır içi uyarlanabilir banner'lara bakın.