Doğal reklamlar, platforma özgü kullanıcı arayüzü bileşenleri aracılığıyla kullanıcılara sunulan reklam öğeleridir. Bu reklamlar, storyboard'larınızda kullandığınız sınıflar kullanılarak gösterilir ve uygulamanızın görsel tasarımına uyacak şekilde biçimlendirilebilir.
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 değil, uygulama sorumlu olur.
Genel olarak, doğal reklamları başarılı bir şekilde uygulamak için iki bölüm vardır: SDK'yı kullanarak reklam yükleme ve ardından reklam içeriğini uygulamanızda görüntüleme.
Bu sayfada, doğal reklamları yüklemek için SDK'nın nasıl kullanılacağı gösterilmektedir.
Ön koşullar
Devam etmeden önce Google Mobile Ads SDK ayarlarını yapın.
Her zaman test reklamlarıyla test edin
Uygulamalarınızı oluştururken ve test ederken yayındaki üretim reklamları yerine test reklamlarını kullandığınızdan emin olun.
Test reklamlarını yüklemenin en kolay yolu, iOS'teki doğal reklamlar için özel test reklam birimi kimliğimizi kullanmaktır:
ca-app-pub-3940256099942544/3986624511
Bu kimlik, her istek için test reklamları döndürecek şekilde özel olarak yapılandırılmıştır. Kodlama, test ve hata ayıklama sırasında bu kimliği kendi uygulamalarınızda kullanabilirsiniz. Uygulamanızı yayınlamadan önce bu kimliği kendi reklam birimi kimliğinizle değiştirmeyi unutmayın.
Google Mobile Ads SDK test reklamları hakkında ayrıntılı bilgi için Test reklamlarını etkinleştirme başlıklı makaleyi inceleyin.
Reklamları yükleme
Doğal reklamlar, GADAdLoader sınıfıyla yüklenir. Bu sınıf, GADAdLoaderDelegate protokolüne göre temsilcilerine mesaj gönderir.
Reklam yükleyiciyi başlatma
Reklam yükleyebilmek için önce reklam yükleyiciyi başlatmanız gerekir.
Aşağıdaki kodda GADAdLoader nasıl başlatılacağı gösterilmektedir:
Swift
nativeAdUnitID yerine reklam birimi kimliğinizi yazın.
Objective-C
kNativeAdUnitID yerine reklam birimi kimliğinizi yazın.
Bir reklam birimi kimliğine (test kimliğini kullanabilirsiniz), hangi doğal biçimleri istemek 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çeneklerini Ayarlama sayfasında bulabilirsiniz.
adTypes dizisi şu sabiti içermelidir :
Reklam yükleyici temsilcisini uygulama
Reklam yükleyici temsilcisinin, reklam türünüze özel protokolleri uygulaması gerekir.
Doğal reklamlar için GADNativeAdLoaderDelegate protokolü, bir doğal reklam yüklendiğinde temsilciye gönderilen bir mesaj içerir.
Swift
func adLoader(_ adLoader: AdLoader, didReceive nativeAd: NativeAd) {
// Set the delegate to receive notifications for interactions with the native ad.
nativeAd.delegate = self
// TODO: Display the native ad.
}
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didReceiveNativeAd:(GADNativeAd *)nativeAd {
// Set the delegate to receive notifications for interactions with the native ad.
nativeAd.delegate = self;
// TODO: Display the native ad.
}
Reklam isteğinde bulun
GADAdLoader başlatıldıktan sonra reklam istemek için loadRequest: yöntemini çağırın:
Swift
adLoader.load(Request())
Objective-C
[self.adLoader loadRequest:[GADRequest request]];
GADAdLoader
içindeki
loadRequest:
yöntemi,
banner'lar ve geçiş reklamlarıyla aynı
GADRequest
nesnelerini kabul eder. Diğer reklam türlerinde olduğu gibi, hedefleme bilgileri eklemek için istek nesnelerini kullanabilirsiniz.
Birden çok reklam yükleme (isteğe bağlı)
Tek bir istekte birden fazla reklam yüklemek için GADAdLoader başlatılırken GADMultipleAdsAdLoaderOptions nesnesini ayarlayın.
Swift
Objective-C
İstek başına reklam sayısı beş ile sınırlıdır ve SDK'nın istenen reklam sayısını tam olarak döndüreceği garanti edilmez.
Döndürülen Google reklamlarının tümü birbirinden farklı olacaktır ancak ayrılmış envanterden veya üçüncü taraf alıcılardan gelen reklamların benzersiz olacağı garanti edilmez.
Uyumlulaştırma kullanıyorsanız GADMultipleAdsAdLoaderOptions sınıfını kullanmayın. Çünkü birden fazla doğal reklam isteği, uyumlulaştırma için yapılandırılmış reklam birimi kimliklerinde çalışmaz.
Yüklemenin ne zaman tamamlandığını belirleme
Bir uygulama loadRequest: yöntemini çağırdıktan sonra, aşağıdaki çağrıları kullanarak isteğin sonuçlarını alabilir:
GADAdLoaderDelegateiçindeadLoader:didFailToReceiveAdWithError:GADNativeAdLoaderDelegateiçindeadLoader:didReceiveNativeAd:
Tek bir reklam isteği, bu yöntemlerden birine tek bir çağrıyla sonuçlanır.
Birden fazla reklam isteği, yukarıdaki yöntemlere en az bir geri çağırma ile sonuçlanır ancak istenen maksimum reklam sayısından fazla olmaz.
Ayrıca, GADAdLoaderDelegate adLoaderDidFinishLoading geri çağırma işlevini sunar. Bu temsilci yöntemi, bir reklam yükleyicinin reklam yüklemeyi tamamladığını ve istek için başka reklam veya hata bildirilmeyeceğini gösterir. Aşağıda, aynı anda birden fazla doğal reklam yüklerken bu yöntemin nasıl kullanılacağına dair bir örnek verilmiştir:
Swift
func adLoaderDidFinishLoading(_ adLoader: AdLoader) {
// The adLoader has finished loading ads.
}
Objective-C
- (void)adLoaderDidFinishLoading:(GADAdLoader *)adLoader {
// The adLoader has finished loading ads.
}
Başarısız istekleri işleme
Protokoller, reklamlar yüklenemediğinde gönderilen bir mesajı tanımlayan GADAdLoaderDelegate protokolünü genişletir.
Swift
func adLoader(_ adLoader: AdLoader, didFailToReceiveAdWithError error: any Error) {
// The adLoader failed to receive an ad.
}
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didFailToReceiveAdWithError:(NSError *)error {
// The adLoader failed to receive an ad.
}
Doğal reklam etkinlikleri hakkında bildirim alma
Yerel reklam etkileşimleriyle ilgili etkinliklerden haberdar olmak için yerel reklamın temsilci özelliğini ayarlayın:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
Ardından, aşağıdaki temsilci çağrılarını almak için GADNativeAdDelegate uygulayın:
Swift
func nativeAdDidRecordImpression(_ nativeAd: NativeAd) {
// The native ad was shown.
}
func nativeAdDidRecordClick(_ nativeAd: NativeAd) {
// The native ad was clicked on.
}
func nativeAdWillPresentScreen(_ nativeAd: NativeAd) {
// The native ad will present a full screen view.
}
func nativeAdWillDismissScreen(_ nativeAd: NativeAd) {
// The native ad will dismiss a full screen view.
}
func nativeAdDidDismissScreen(_ nativeAd: NativeAd) {
// The native ad did dismiss a full screen view.
}
func nativeAdWillLeaveApplication(_ nativeAd: NativeAd) {
// 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
Reklam yüklerken aşağıdaki kurallara uyun.
Bir listede doğal reklamlar kullanan uygulamalar, reklam listesini önceden önbelleğe almalıdır.
Reklamları önbelleğe alırken önbelleğinizi temizleyin ve bir saat sonra yeniden yükleyin.
adLoaderDidFinishLoading:ile gösterilen önceki istek yüklenene kadarGADAdLoaderüzerindeloadRequest:yöntemini tekrar çağırmayın.Doğal reklam önbelleğe almayı 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. Doğal reklamlar büyük bir bellekte kaplanan yere sahiptir ve doğal reklamları kaldırmadan önbelleğe almak aşırı bellek kullanımına neden olur.
Artık kullanılmadığında doğal reklamları yok edin.
Reklamınızı görüntüleme
Reklamı yükledikten sonra yapmanız gereken tek şey reklamı kullanıcılarınıza göstermektir. Nasıl yapacağınızı öğrenmek için Doğal Gelişmiş kılavuzumuzu inceleyin.