Doğal reklamlar, platforma özgü kullanıcı arayüzü bileşenleri aracılığıyla kullanıcılara sunulan reklam öğeleridir. Bunlar, taslak panolarınızda kullandığınız sınıflarla gösterilir ve uygulamanızın görsel tasarımıyla eşleşecek şekilde biçimlendirilebilir.
Bir doğal reklam yüklendiğinde uygulamanız, öğelerini içeren bir reklam nesnesi alır ve bu öğeleri göstermekten Google Mobile Ads SDK'sı yerine uygulama sorumlu olur.
Genel olarak, doğal reklamları başarılı bir şekilde uygulamanın iki bölümü vardır: SDK'yı kullanarak bir reklam yükleme ve ardından reklam içeriğini uygulamanızda görüntüleme.
Bu sayfada, yerel reklamları yüklemek için SDK'nın nasıl kullanılacağı gösterilmektedir.
Ön koşullar
- Başlangıç kılavuzunu tamamlayın.
Her zaman test reklamlarıyla test yapın
Uygulamalarınızı oluşturup test ederken canlı üretim reklamları yerine test reklamları kullandığınızdan emin olun.
Test reklamları yüklemenin en kolay yolu, iOS'teki doğal reklamlar için özel test reklam birimi kimliğimizi kullanmaktır:
/21775744923/example/native
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ı başlıklı makaleyi inceleyin.
Reklam yükleme
Yerel reklamlar, GADAdLoaderDelegate
protokolüne göre temsilcilerine mesaj gönderen GADAdLoader
sınıfıyla yüklenir.
Sistem tarafından tanımlanan yerel biçime ek olarak, doğrudan satılan doğal reklamlar için kullanılabilecek kendi özel doğal reklam biçimlerinizi de oluşturabilirsiniz. Özel doğal reklam biçimleri, uygulamanıza istediğiniz şekilde yapılandırılmış veri göndermenize olanak tanır. Bu reklamlar GADCustomNativeAd
sınıfıyla temsil edilir.
Reklam yükleyiciyi başlatma
Reklam yükleyebilmek için reklam yükleyiciyi başlatmanız gerekir.
Aşağıdaki kodda, bir GADAdLoader
öğesinin nasıl başlatılacağı gösterilmektedir:
Swift
adLoader = GADAdLoader(adUnitID: "/21775744923/example/native",
// The UIViewController parameter is optional.
rootViewController: rootViewController,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/21775744923/example/native"
// The UIViewController parameter is nullable.
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
Bir reklam birimi kimliğine (test kimliğini kullanabilirsiniz), hangi doğal biçimleri istediğinizi belirtmek için adTypes
dizisine iletilecek sabitlere ve options
parametresinde ayarlamak istediğiniz seçeneklere ihtiyacınız vardır. options
parametresi için olası değerlerin listesini Doğal Reklam Seçenekleri sayfasında bulabilirsiniz.
adTypes
dizisi aşağıdaki sabitlerden birini veya daha fazlasını içermelidir:
Reklam yükleyici temsilcisini uygulama
Reklam yükleyici temsilcisinin, reklam türünüze özgü protokolleri uygulaması gerekir.
Yerel reklamlar için GADNativeAdLoaderDelegate
protokolü, yerel reklam yüklendiğinde temsilciye gönderilen bir mesaj içerir.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
GADCustomNativeAdLoaderDelegate
protokolü, özel şablon reklam yüklendiğinde temsilciye gönderilen bir mesaj içerir.
Swift
func adLoader(_ adLoader: GADAdLoader,
Receive customNativeAd: GADCustomNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;
Reklam isteğinde bulun
GADAdLoader
başlatıldıktan sonra reklam istemek için loadRequest:
yöntemini çağırın:
Swift
adLoader.load(GAMRequest())
Objective-C
[self.adLoader loadRequest:[GAMRequest request]];
GADAdLoader
bölümündeki loadRequest:
yöntemi, banner'lar ve geçiş reklamlarıyla aynı GAMRequest
nesneleri kabul eder. Diğer reklam türlerinde yaptığınız gibi hedefleme bilgileri eklemek için istek nesnelerini kullanabilirsiniz.
Yüklemenin ne zaman bittiğini belirleme
Bir uygulama loadRequest:
'ü çağırdıktan sonra aşağıdaki çağrıları kullanarak isteğin sonuçlarını alabilir:
GADAdLoaderDelegate
alt bölgesindeadLoader:didFailToReceiveAdWithError:
GADNativeAdLoaderDelegate
alt bölgesindeadLoader:didReceiveNativeAd:
Tek bir reklam isteği, bu yöntemlerden birine tek bir çağrıyla sonuçlanır.
Başarısız istekleri işleme
Yukarıdaki protokoller, reklamlar yüklenemezse gönderilen bir mesajı tanımlayan GADAdLoaderDelegate
protokolünü genişletir.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
Yerel reklam etkinlikleri hakkında bildirim alma
Yerel reklam etkileşimleriyle ilgili etkinliklerden haberdar olmak için yerel reklamın delegate mülkünü ayarlayın:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
Ardından, aşağıdaki temsilci aramalarını almak için GADNativeAdDelegate
uygulayın:
Swift
func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
// The native ad was shown.
}
func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
// The native ad was clicked on.
}
func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
// The native ad will present a full screen view.
}
func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad will dismiss a full screen view.
}
func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad did dismiss a full screen view.
}
func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
// The native ad will cause the app to become inactive and
// open a new app.
}
Objective-C
- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
// The native ad was shown.
}
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
// The native ad was clicked on.
}
- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
// The native ad will present a full screen view.
}
- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
// The native ad will dismiss a full screen view.
}
- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
// The native ad did dismiss a full screen view.
}
- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
// The native ad will cause the app to become inactive and
// open a new app.
}
En iyi uygulamalar
Reklamları yüklerken bu kurallara uyun.
Bir listede doğal reklam kullanan uygulamalar, reklam listesini önceden önbelleğe almalıdır.
Reklamları önceden önbelleğe alırken önbelleğinizi temizleyin ve bir saat sonra yeniden yükleyin.
Önceki istek yüklenmeyi tamamlayana kadar
GADAdLoader
üzerindeloadRequest:
'ü tekrar çağırmayın (adLoaderDidFinishLoading:
ile gösterilir).Yerel reklam önbelleğe alma işlemini yalnızca gerekli olanla sınırlayın. Örneğin, önbelleğe alma işlemi sırasında yalnızca ekranda hemen görünen reklamları önbelleğe alın. Yerel reklamlar büyük bir bellek alanı kaplar ve yerel reklamları yok etmeden önbelleğe almak aşırı bellek kullanımına neden olur.
Artık kullanılmayan doğal reklamları yok edin.
Reklamınızı gösterme
Bir reklamı yükledikten sonra tek yapmanız gereken, reklamı kullanıcılarınıza göstermektir. Nasıl yapılacağını öğrenmek için yerel reklamlar ile ilgili ileri seviye kılavuzumuzu inceleyin.