Doğal reklam seçenekleri

Yerel 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

Öğe kontrolleri

Tercih edilen medya en boy oranı kontrolleri

Medya En Boy Oranı Denetimleri, videonun en boy oranı için bir tercih belirtmenizi sağlar: reklam öğeleridir.

GADNativeAdMediaAdLoaderOptions mediaAspectRatio değerini GADMediaAspectRatio ile ayarlayın.

  • Ayarlanmamışsa döndürülen reklamın medya en boy oranı herhangi bir değer olabilir.

  • Bu özellik ayarlandığında tercih edilen en boy oranı türünü seçin.

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.

GADNativeAdMediaAdLoaderOptions *nativeOption = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOption.mediaAspectRatio = GADMediaAspectRatioAny;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

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.

GADNativeAdImageAdLoaderOptions disableImageLoading değerini BOOL değerine ayarlayın.
  • Resim indirme kontrolü varsayılan olarak devre dışıdır.

  • Devre dışı bırakıldığında, Google Mobile Ads SDK'sı hem resmi hem de URI'yı sizin için doldurur.

  • Etkinleştirildiğinde, SDK yalnızca URI'yı doldurarak verileri indirmenize olanak tanır. resimlere yer verebilirsiniz.

Aşağıdaki örnekte, SDK'ya yalnızca URI'yi döndürmesi talimatı verilmektedir.

GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.disableImageLoading = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

Resim yükü kontrolleri

Bazı reklamlarda tek bir resim yerine bir dizi resim bulunur. Bu özelliği kullanarak uygulamanızın tüm resimleri mi yoksa yalnızca bir resmi mi göstermeye hazır olduğunu belirtir.

GADNativeAdImageAdLoaderOptions shouldRequestMultipleImages değerini BOOL değerine ayarlayın.
  • Resim yükü denetimleri varsayılan olarak devre dışıdır.

  • Devre dışı bırakıldığında, uygulamanız SDK'ya yalnızca seri içeren öğelerin ilk resminde yer alır.

  • Bu özellik etkinleştirildiğinde uygulamanız, birden fazla öğesi olan tüm öğelerin tüm resimlerini göstermeye hazır olduğunu belirtir.

Aşağıdaki örnekte, SDK'ya birden fazla resim öğesi döndürmesi için talimat verilmektedir.

GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.shouldRequestMultipleImages = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

Reklam Seçenekleri yerleşimleri

Reklam Seçenekleri konum kontrolleri

Reklam Seçenekleri konum denetimleri, reklam öğesinin hangi köşenin Reklam Seçenekleri simgesi.

GADNativeAdViewAdOptions preferredAdChoicesPosition değerini GADAdChoicesPosition değerine ayarlayın.

  • Politika ayarlanmadan bırakılırsa Reklam Seçenekleri simgesi konumu sağ üste ayarlanır.

  • Ayarlanırsa AdChoices, istendiği gibi özel konuma yerleştirilir.

Aşağıdaki örnekte, özel AdChoices resim konumunun nasıl ayarlanacağı gösterilmektedir.

GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopLeftCorner;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

Reklam Seçenekleri özel görünümü

Reklam Seçenekleri özel görünüm özelliği, Reklam Seçenekleri simgesini sağlayabilir. Bu, yalnızca dört köşeden birinin belirtilmesine izin veren AdChoices konum kontrollerinden farklıdır.

GADNativeAd.adChoicesView ayarını yapın. GADAdChoicesView bulunan mülk oluşturulmadan önce oluşturulur ve Reklam Seçenekleri içeriği GADAdChoicesView.

Aşağıdaki örnekte, özel Reklam Seçenekleri görünümünün nasıl ayarlanacağı gösterilmektedir. Reklam Seçenekleri simgesi, GADAdChoicesView içinde oluşturulur.

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader didReceiveNativeAd:(GADNativeAd *)nativeAd {

    ...

    
    GADAdChoicesView *customAdChoicesView =
        [[GADAdChoicesView alloc] initWithFrame: CGRectMake(..., ..., ..., ...)];

    [nativeAdView addSubview:customAdChoicesView];
    nativeAdView.adChoicesView = customAdChoicesView;

    // Associate the native ad view with the native ad object. This is
    // required to make the ad clickable.
    // Note: this should always be done after populating the ad views.
    nativeAdView.nativeAd = nativeAd;
}

Swift

func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
    refreshAdButton.isEnabled = true

    ...
    // Define a custom position for the AdChoices icon.
    let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
    let customAdChoicesView = GADAdChoicesView(frame: customRect)
    nativeAdView.addSubview(customAdChoicesView)
    nativeAdView.adChoicesView = customAdChoicesView

    // Associate the native ad view with the native ad object. This is
    // required to make the ad clickable.
    // Note: this should always be done after populating the ad views.
    nativeAdView.nativeAd = nativeAd;
}

Video kontrolleri

Yoksayma davranışını başlat

Sesi kapalı başlatma davranışı, videonun başlangıç sesini devre dışı bırakmanıza veya etkinleştirmenize olanak tanır.

GADVideoOptions startMuted değerini BOOL değerine ayarlayı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 sesi açık olarak nasıl başlatılacağı gösterilmektedir.

GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.startMuted = NO;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

Özel oynatma kontrolleri

Bu, videosunu izleyin.

GADVideoOptions customControlsRequested değerini BOOL değerine ayarlayın.
  • Özel oynatma kontrolü varsayılan olarak devre dışıdır.

  • 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 GADVideoController üzerinde ilgili yöntemleri çağırabilir.

Aşağıdaki örnekte, özel oynatma denetimlerine sahip bir videonun nasıl isteneceği gösterilmektedir.

GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.customControlsRequested = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

Özel kontrollerin etkin olup olmadığını kontrol etme

Döndürülen reklamın izin verip vermeyeceğini istek sırasında bilinmediğinden, özel video denetimleri varsa özel denetimlerin etkin olup olmadığını kontrol etmeniz gerekir.

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveNativeAd:(GADNativeAd*)nativeAd {

  GADVideoController *videoController = nativeAd.mediaContent.videoController;
  BOOL canShowCustomControls = videoController.customControlsEnabled;

}

Swift

func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
        let videoController = nativeAd.mediaContent.videoController
        let canShowCustomControls = videoController?.customControlsEnabled() == true
}

Özel video denetimleri oluşturma

Aşağıdaki en iyi uygulamalardan yararlanarak özel video kontrolleri oluşturun:

  1. Özel denetimler 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 bir engel olarak değerlendirmesini sağlar.
  2. Medya görünümünün tamamı üzerinde görünmez bir yer paylaşımı oluşturmaktan kaçının. Yer paylaşımları, medya görüntülemesinde tıklamaları engelleyerek doğal reklamların performansını olumsuz yönde etkiler. Bunun yerine, denetimlere sığacak kadar büyük olan küçü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, özel tıklamanın nasıl etkinleştirileceği gösterilmektedir yerel reklamlarınızda hareketler.

Seçtiğiniz kaydırma yönüyle bir GADNativeAdCustomClickGestureOptions sınıfı başlatın. Aynı zamanda kapsamdaki dokunmalara tıklama olarak izin verilmesini istiyorsunuz.

  • Özel tıklama hareketleri varsayılan olarak devre dışıdır.

  • Devre dışı bırakıldığında yalnızca dokunma işlemleri tıklama olarak sayılır.

  • Etkinleştirildiğinde kaydırma hareketleri tıklama olarak sayılır ve şunları yapabilirsiniz: dokunmaların yine de tıklama olarak sayılıp sayılmayacağını belirler.

Aşağıdaki örnekte özel bir kaydırma hareketinin ve normal dokunma davranışını korur.

GADNativeAdCustomClickGestureOptions *swipeGestureOptions = [[GADNativeAdCustomClickGestureOptions alloc]
        initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
                          tapsAllowed:YES];

// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
self.adLoader = [[GADAdLoader alloc]
        initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
      rootViewController:self
                 adTypes:@[ GADAdLoaderAdTypeNative ]
                 options:@[ swipeGestureOptions ]];

Kaydırma hareketi etkinliklerini dinleme

Kaydırma hareketiyle tıklama kaydedildiğinde Google Mobile Ads SDK'sı şunu çağırır: nativeAdDidRecordSwipeGestureClick: GADNativeAdDelegate üzerinde yetki verme yöntemi ve mevcut nativeAdDidRecordClick: delege yöntemidir.

#pragma mark - GADNativeAdDelegate implementation

// Called when a swipe gesture click is recorded.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click has occurred.");
}

// Called when a swipe gesture click or a tap click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click or tap click has occurred.");
}

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.