Yerel Stiller

Yerel stil ayarları, Google Ad Manager'ın yerel reklamların üründe belirttiğiniz yerel stillere göre oluşturulmasını sağlar. Öncelikle, boyut ve hedeflemeyi belirtin. Ardından, duyarlı reklamlar tanımlamak ve tüm ekranlarda kaliteli bir görüntülü reklam oluşturmak için HTML, CSS ve JavaScript ekleyin. Oluşturma işleminin herhangi birini yapmanız gerekmez. Ad Manager, hedef için doğru yerel stili otomatik olarak uygular. Yerel stiller, GAMBannerView kullanılarak banner reklamlar gibi uygulanır. Bunlar, önceden belirlenen sabit bir reklam boyutu veya çalışma zamanında belirlenen değişken reklam boyutuyla kullanılabilir.

Ön koşullar

  • Google Mobile Ads SDK'sı 7.14.0 veya daha sonraki bir sürüm

Bu kılavuzda, Google Mobile Ads SDK'sı ile ilgili bazı bilgilerin yer aldığı varsayılmaktadır. Henüz yapmadıysanız Başlayın kılavuzumuza bakabilirsiniz.

Sabit boyut

Sabit boyutlu yerel stiller, yerel reklamın genişliğini ve yüksekliğini kontrol etmenize olanak tanır. Sabit bir boyut ayarlamak için aşağıdaki adımları uygulayın:

  1. Ad Manager kullanıcı arayüzünde bir satır öğesi oluşturun ve Size alanı açılır listesinden önceden tanımlanmış boyutlardan birini seçin.

  2. Arayüz Oluşturucu'da, GAMBannerView öğesinin genişliğini ve yüksekliğini 1. adımda seçtiğiniz önceden tanımlanmış boyuta uyacak şekilde ayarlayın. Banner boyutu bölümünde boyutların listesini ve bunlara karşılık gelen GADAdSize sabit değerlerini görebilirsiniz.

Yerel stilleri sabit boyutta uygulamak İlk banner isteğinizdeki talimatları uygulamak kadar basit olsa da banner reklamınızın uygulamanızda doğal görünmesini sağlayacak HTML ve CSS ve JavaScript esnekliğini ve kontrolüne sahip olursunuz.

Değişken boyut

Bazı durumlarda sabit boyut anlamlı olmayabilir. Örneğin, reklamın genişliğini uygulamanızın içeriğiyle eşleşecek şekilde isteyebilirsiniz ancak reklamın yüksekliğinin, reklamın içeriğine sığacak şekilde dinamik olarak ayarlanması gerekir. Bu kullanım durumunu yönetmek için Ad Manager kullanıcı arayüzünde reklam boyutu olarak Fluid değerini belirtebilirsiniz. Bu, reklamın boyutunun uygulamadaki çalışma zamanında belirlendiğini belirtir. SDK, bu vakayı işlemek için özel bir GADAdSize sabit değeri (kGADAdSizeFluid) sağlar. Değişken reklam boyutu yüksekliği, yayıncı tarafından tanımlanan genişliğe göre dinamik olarak belirlenir. Böylece GAMBannerView, yüksekliği reklam öğesinin yüksekliğiyle eşleşecek şekilde ayarlanır.

Değişken istek

Diğer reklam biçimlerinin aksine, kGADAdSizeFluid reklam boyutunun önceden tanımlanmış bir genişliği yoktur. Bu nedenle, kodunuzda veya Arayüz Oluşturucu'da banner çerçeve genişliğini açıkça ayarladığınızdan emin olun. Bir genişlik belirtilmezse varsayılan olarak SDK, banner'ın yüksekliğini cihazın tam genişliğine göre ayarlar.

kGADAdSizeFluid özelliğini içeren çok boyutlu bir istek yaparsanız döndürülen reklam her zaman değişken kapsayıcıya yerleştirilir ve değişken bir reklam gibi davranır. Bu değişken kapsayıcıda değişken olmayan bir reklam öğesinin döndürülmesi durumunda SDK, reklamı kapsayıcıya ortalar. Böylece, her yeni reklam döndürüldüğünde genişlik kısıtlamasını değiştirmek zorunda kalmazsınız.

Tek boyutlu ve çok boyutlu değişken istek uygulama işlemi birbirine çok benzer. Tek fark, çok boyutlu istek için validAdSizes özelliğini, reklam isteği için geçerli olan reklam boyutlarını belirtecek şekilde ayarlarsınız:

Swift

bannerView.validAdSizes = [NSValueFromGADAdSize(kGADAdSizeFluid),
                           NSValueFromGADAdSize(kGADAdSizeBanner)]

Objective-C

_bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
                              NSValueFromGADAdSize(kGADAdSizeBanner) ];

Kod bütününde aşağıdaki gibi görünür:

Swift

var bannerView: GAMBannerView!

override func viewDidLoad() {
  super.viewDidLoad()
  // Create the GAMBannerView and set its width to a width that makes sense for your
  // app. In this example, the width is set to the width of the UIViewController's
  // root view.
  bannerView = GAMBannerView(adSize: kGADAdSizeFluid)
  var frameRect = bannerView.frame
  frameRect.size.width = view.bounds.width
  bannerView.frame = frameRect

  // Uncomment this code for a multisize fluid request.
  // bannerView.validAdSizes = [NSValueFromGADAdSize(kGADAdSizeFluid),
  //                            NSValueFromGADAdSize(kGADAdSizeBanner)]

  bannerView.adUnitID = "YOUR_AD_UNIT_ID"
  bannerView.rootViewController = self

  // Make the ad request.
  bannerView.load(GAMRequest())
}

Objective-C

GAMBannerView *_bannerView;

- (void)viewDidLoad {
  [super viewDidLoad];
  // Create the GAMBannerView and set its width to a width that makes sense for your
  // app. In this example, the width is set to the width of the UIViewController's
  // root view.
  _bannerView = [[GAMBannerView alloc] initWithAdSize:kGADAdSizeFluid];
  CGRect frameRect = _bannerView.frame;
  frameRect.size.width = CGRectGetWidth(self.view.bounds);
  _bannerView.frame = frameRect;

  // Uncomment this code for a multisize fluid request.
  // _bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
  //                               NSValueFromGADAdSize(kGADAdSizeBanner) ];

  _bannerView.adUnitID = @"YOUR_AD_UNIT_ID";
  _bannerView.rootViewController = self;

  // Make the ad request.
  [_bannerView loadRequest:[GAMRequest request]];
}

Ad Manager Değişken reklam boyutunun örnek uygulamasını görmek için Swift veya Objective-C'ye iOS API Demo uygulamasını indirin.

API Demosunu İndirin

GADAdSizeDelegate protokolü

Bir banner'ın reklam boyutu değişmeden önce yüksekliğini bilmek isteyebilirsiniz. adView:willChangeAdSizeTo: geri çağırması, banner görünümü yeni GADAdSize olarak değişmeden önce yetki verilmiş kullanıcıyı bilgilendirir. Banner görünümü yeni reklam boyutuna geçmeden önce bildirim almak için sınıfınızın GADAdSizeDelegate protokolüne uyması gerekir.

Banner'ın yeni genişliğinin ve yüksekliğinin nasıl alınacağını gösteren adView:willChangeAdSizeTo: geri çağırmanın örnek bir uygulamasını burada bulabilirsiniz:

Swift

// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
bannerView.adSizeDelegate = self

// MARK: - GADAdSizeDelegate

func adView(_ bannerView: GADBannerView, willChangeAdSizeTo adSize: GADAdSize) {
  let height = adSize.size.height
  let width = adSize.size.width
}

Objective-C

// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
_bannerView.adSizeDelegate = self;

#pragma mark - GADAdSizeDelegate

- (void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)adSize {
  CGFloat height = adSize.size.height;
  CGFloat width = adSize.size.width;
}