Doğal reklamlar, ek özelleştirmeler yapmanıza ve mümkün olan en iyi reklam deneyimini sunmanıza olanak tanıyan birçok gelişmiş özelliğe sahiptir. Bu kılavuzda, doğal reklamların gelişmiş özelliklerinin nasıl kullanılacağı gösterilmektedir.
Ön koşullar
- Yerel reklam biçimini entegre edin.
Öğe kontrolleri
Tercih edilen medya en boy oranı kontrolleri
Medya En Boy Oranı Kontrolleri, reklam öğelerinin en boy oranı için tercih belirtmenize olanak tanır.
NativeAdOptions.MediaAspectRatio
değeriyle NativeAdOptions.Builder.setMediaAspectRatio()
işlevini çağırın.
Bu ayar yapılmadığında döndürülen reklamın medya en boy oranı herhangi bir değer olabilir.
Bu ayar yapıldıktan sonra, tercih edilen en boy oranı türünü belirterek kullanıcı deneyimini iyileştirebilirsiniz.
Aşağıdaki örnekte, SDK'ya belirli bir en-boy oranına sahip bir döndürülen resim veya videoyu tercih etmesi talimatı verilmektedir.
NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
.setMediaAspectRatio(NativeAdOptions.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
.build();
AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
.withNativeAdOptions(nativeAdOptions)
.build();
Resim indirme kontrolü
Resim indirme kontrolü, SDK'nın resim öğelerini mi yoksa yalnızca URI'leri mi döndüreceğine karar vermenize olanak tanır.
boolean
değeriyle NativeAdOptions.Builder.setReturnUrlsForImageAssets()
işlevini çağırın.
Resim indirme denetimi varsayılan olarak devre dışıdır.
Devre dışı bırakıldığında Google Mobile Ads SDK'sı hem resmi hem de URI'yi sizin için doldurur.
Etkinleştirildiğinde SDK, URI'yi doldurur ve gerçek resimleri istediğiniz zaman indirmenize olanak tanır.
Aşağıdaki örnekte, SDK'ya yalnızca URI'yi döndürmesi talimatı verilmektedir.
NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
.setReturnUrlsForImageAssets(true)
.build();
AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
.withNativeAdOptions(nativeAdOptions)
.forNativeAd(nativeAd -> {
List<Uri> imageUris = new ArrayList<>();
for (Image image : nativeAd.getImages()) {
imageUris.add(image.getUri());
}
})
.build();
Reklam Seçenekleri yerleşimleri
Reklam Seçenekleri konum kontrolleri
Reklam Seçenekleri konum denetimleri, Reklam Seçenekleri simgesinin hangi köşede oluşturulacağını seçmenize olanak tanır.
NativeAdOption.AdChoicesPlacement
değeriyle NativeAdOptions.Builder.setAdChoicesPlacement()
işlevini çağırın.
Ayarlanmamışsa Reklam Seçenekleri simgesi sağ üstte gösterilir.
Ayarlanırsa AdChoices, istendiği gibi özel konuma yerleştirilir.
Aşağıdaki örnekte, özel AdChoices resim konumunun nasıl ayarlanacağı gösterilmektedir.
NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
.setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
.build();
AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
.withNativeAdOptions(nativeAdOptions)
.build();
Reklam Seçenekleri özel görünümü
Reklam Seçenekleri özel görüntüleme özelliği, Reklam Seçenekleri simgesini özel bir konuma yerleştirmenize olanak tanır. Bu, yalnızca dört köşeden birinin belirtilmesine izin veren AdChoices konum kontrollerinden farklıdır.
AdChoicesView
değeriyle NativeAdView.setAdChoicesView()
işlevini çağırın.
Aşağıdaki örnekte, AdChoicesView
içinde oluşturulan Reklam Seçenekleri simgesiyle özel bir Reklam Seçenekleri görünümünün nasıl ayarlanacağı gösterilmektedir.
public void onNativeAdLoaded(NativeAd ad) {
NativeAdView nativeAdView = new NativeAdView(getApplicationContext());
AdChoicesView adChoicesView = new AdChoicesView(this);
nativeAdView.setAdChoicesView(adChoicesView);
}
Video kontrolleri
Sessiz modu başlatma davranışı
Sessiz başlatma davranışı, videonun başlangıç sesini devre dışı bırakmanıza veya etkinleştirmenize olanak tanır.
boolean
değeriyle VideoOptions.Builder.setStartMuted()
işlevini çağırın.
Sessiz başlatma davranışı varsayılan olarak etkindir.
Devre dışı bırakıldığında uygulamanız, videonun sesli olarak başlatılmasını ister.
Bu ayar etkinleştirildiğinde uygulamanız, videonun sesi kapalı olarak başlatılmasını ister.
Aşağıdaki örnekte, videonun sesinin açık olarak nasıl başlatılacağı gösterilmektedir.
VideoOptions videoOptions = new VideoOptions.Builder()
.setStartMuted(false)
.build();
NativeAdOptions adOptions = new NativeAdOptions.Builder()
.setVideoOptions(videoOptions)
.build();
AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
.withNativeAdOptions(adOptions).build();
Özel oynatma kontrolleri
Bu sayede videoyu oynatmak, duraklatmak veya sesi kapatmak için özel video giriş kontrolleri isteyebilirsiniz.
boolean
değeriyle VideoOptions.Builder.setCustomControlsRequested()
işlevini çağırın.
Özel oynatma kontrolleri varsayılan olarak devre dışıdır.
Bu seçenek devre dışı bırakıldığında videonuzda SDK tarafından oluşturulan giriş kontrolleri gösterilir.
Reklamda video içeriği varsa ve özel kontroller etkinse reklamda herhangi bir kontrol gösterilmeyeceğinden reklamla birlikte özel kontrollerinizi de göstermeniz gerekir. Kontroller daha sonra ilgili yöntemleri çağırabilir.
Aşağıdaki örnekte, özel oynatma denetimlerine sahip bir videonun nasıl isteneceği gösterilmektedir.
VideoOptions videoOptions = new VideoOptions.Builder()
.setCustomControlsRequested(true)
.build();
NativeAdOptions adOptions = new NativeAdOptions.Builder()
.setVideoOptions(videoOptions)
.build();
AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
.withNativeAdOptions(adOptions).build();
Özel kontrollerin etkin olup olmadığını kontrol etme
Döndürülen reklamın özel video denetimlerine izin verip vermeyeceği istek sırasında bilinmediğinden, özel denetimlerin etkin olup olmadığını kontrol etmeniz gerekir.
Kotlin
NativeAd.OnNativeAdLoadedListener { ad ->
val mediaContent = ad.mediaContent
if (mediaContent != null) {
val videoController = mediaContent.videoController
val canShowCustomControls = videoController.isCustomControlsEnabled
}
}
Java
@Override
public void onNativeAdLoaded(NativeAd nativeAd) {
MediaContent mediaContent = nativeAd.getMediaContent();
if (mediaContent != null) {
VideoController videoController = mediaContent.getVideoController();
boolean canShowCustomControls = videoController.isCustomControlsEnabled();
}
}
Özel video denetimleri oluşturma
Aşağıdaki en iyi uygulamaları kullanarak özel video kontrolleri oluşturun:
- Özel kontroller görünümünü yerel reklam görünümünün alt öğesi olarak oluşturun. Bu yaklaşım, açık ölçüm görüntülenebilirlik hesaplamalarının özel kontrolleri kullanıcı dostu bir engel olarak değerlendirmesini sağlar.
- Medya görünümünün tamamının üzerine görünmez bir yer paylaşımı oluşturmaktan kaçının. Yer paylaşımları, medya görünümündeki tıklamaları engelleyerek doğal reklam performansını olumsuz etkiler. Bunun yerine, kontrollere sığacak kadar büyük bir yer paylaşımı oluşturun.
Özel tıklama hareketleri
Özel tıklama hareketleri, reklam görüntülemelerinde kaydırma işlemlerinin reklam tıklaması olarak kaydedilmesini sağlayan bir yerel reklam özelliğidir. İçerikte gezinmek için kaydırma hareketlerini kullanan uygulamalarda çalışacak şekilde tasarlanmıştır. Bu kılavuzda, yerel reklamlarınızda özel tıklama hareketlerinin nasıl etkinleştirileceği gösterilmektedir.
Kaydırma hareketi etkinliklerini dinleme
Bir kaydırma hareketi tıklaması kaydedildiğinde Google Mobile Ads SDK'sı, mevcut onAdClicked()
yöntemine ek olarak AdListener
üzerinde onAdSwipeGestureClicked()
yöntemini çağırır.
AdLoader adLoader = builder
.withAdListener(
new AdListener() {
// Called when a swipe gesture click is recorded.
@Override
public void onAdSwipeGestureClicked() {
Log.d(TAG, "A swipe gesture click has occurred.")
}
// Called when a swipe gesture click or a tap click is recorded, as
// configured in NativeAdOptions.
@Override
public void onAdClicked() {
Log.d(TAG, "A swipe gesture click or a tap click has occurred.")
}
})
.build();
Uyumlulaştırma
Özel tıklama hareketleri yalnızca Google Mobile Ads SDK'sının oluşturduğu doğal reklamlarda çalışır. Oluşturma için üçüncü taraf SDK'ları gerektiren reklam kaynakları, özel tıklama yönleri ayarına yanıt vermez.