Doğal reklamlar, platforma özgü kullanıcı arayüzü bileşenleri aracılığıyla kullanıcılara sunulan reklam öğeleridir. Hâlihazırda kullandığınız sınıflar kullanılarak gösterilirler kullanabilir ve uygulamanızın görsel tasarımına uyacak ş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ştururken ve test ederken, uygulamalarınızın yanı sıra üretim reklamlarıdır.
Test reklamları 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
Her istek için test reklamı döndürecek şekilde özel olarak yapılandırılmıştır. kod yazma, 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.
Reklamları yükle
Yerel reklamlar
GADAdLoader
yetki verilmiş kullanıcılarına ileti gönderen bir e-posta alırsınız.
GADAdLoaderDelegate
protokolü.
Reklam yükleyiciyi başlatma
Bir reklamı yüklemeden önce reklam yükleyiciyi başlatmanız gerekir.
Aşağıdaki kod, bir GADAdLoader
öğesinin nasıl başlatılacağını gösterir:
Swift
adLoader = GADAdLoader(adUnitID: "ca-app-pub-3940256099942544/3986624511",
// The UIViewController parameter is optional.
rootViewController: rootViewController,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
// The UIViewController parameter is nullable.
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
Bir reklam birimi kimliği (test kimliğini kullanabilirsiniz),
İstediğiniz yerel biçimleri belirtmek için adTypes
dizisi ve
options
parametresinde ayarlamak istediğiniz seçeneklerdir. Olasılık listesi
options
parametresinin değerleri, Yerel Reklam Ayarlama
Seçenekler sayfası.
adTypes
dizisi,
şu sabit değeri :
Reklam yükleyici yetkisini uygulama
Reklam yükleyici temsilcisinin, reklam türünüze özel protokolleri uygulaması gerekir.
GADNativeAdLoaderDelegate
protokolü, doğal reklamlarda bir mesaj içerir.
yerel reklam yüklendiğinde yetki verilen kullanıcıya gönderilir.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
Reklam isteğinde bulun
GADAdLoader
cihazınız başlatıldıktan sonra aşağıdaki işlemleri yapmak için loadRequest:
yöntemini çağırın:
bir reklam isteyin:
Swift
adLoader.load(GADRequest())
Objective-C
[self.adLoader loadRequest:[GADRequest request]];
İlgili içeriği oluşturmak için kullanılan
loadRequest:
yöntemindeki
GADAdLoader
aynısını kabul eder
GADRequest
banner ve geçiş reklamı olarak kullanın. 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 isteğe birden fazla reklam yüklemek için GADAdLoader
'ı başlatırken GADMultipleAdsAdLoaderOptions
nesnesini ayarlayın.
Swift
let multipleAdOptions = GADMultipleAdsAdLoaderOptions()
multipleAdOptions.numberOfAds = 5;
adLoader = GADAdLoader(adUnitID: "ca-app-pub-3940256099942544/3986624511",
// The UIViewController parameter is optional.
rootViewController: self,
adTypes: [ .native ],
options: [ multipleAdOptions ])
Objective-C
GADMultipleAdsAdLoaderOptions *multipleAdsOptions =
[[GADMultipleAdsAdLoaderOptions alloc] init];
multipleAdsOptions.numberOfAds = 5;
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
// The UIViewController parameter is nullable.
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ multipleAdsOptions ]];
İstek başına reklam sayısı beşle sınırlıdır ve SDK, istenen reklamların tam sayısını döndürür.
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 olması garanti edilmez.
Uyumlulaştırma kullanıyorsanız GADMultipleAdsAdLoaderOptions
sınıfını kullanmayın. Çünkü birden fazla yerel reklam isteği, uyumlulaştırma için yapılandırılmış reklam birimi kimliklerinde şu anda kullanılamaz.
Yüklemenin ne zaman bittiğini belirleme
Bir uygulama loadRequest:
çağırdıktan sonra isteğin sonuçlarını şunu kullanarak alabilir: loadRequest:
şunu arar:
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.
Birden fazla reklam isteği, yukarıdakine en az bir geri aramayla sonuçlanır ancak istenen maksimum reklam sayısını aşmamalıdır.
Ayrıca, GADAdLoaderDelegate
adLoaderDidFinishLoading
sunuyor.
geri arama. Bu temsilci yöntemi, bir reklam yükleyicinin reklamları yüklemeyi tamamladığını ve istek için başka reklam veya hata bildirilmeyeceğini gösterir. Bir
Tek seferde birden fazla doğal reklam yüklerken bunu nasıl kullanabileceğinizi gösteren örnek:
Swift
class ViewController: UIViewController, GADNativeAdLoaderDelegate {
var adLoader: GADAdLoader!
override func viewDidLoad() {
super.viewDidLoad()
let multipleAdOptions = GADMultipleAdsAdLoaderOptions()
multipleAdOptions.numberOfAds = 5;
adLoader = GADAdLoader(adUnitID: "ca-app-pub-3940256099942544/3986624511",
// The UIViewController parameter is optional.
rootViewController: rootViewController,
adTypes: [ .native ],
options: [ multipleAdOptions ])
adLoader.delegate = self
adLoader.load(GADRequest())
}
func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd) {
// A native ad has loaded, and can be displayed.
}
func adLoaderDidFinishLoading(_ adLoader: GADAdLoader) {
// The adLoader has finished loading ads, and a new request can be sent.
}
}
Objective-C
@interface ViewController () <GADNativeAdLoaderDelegate, GADVideoControllerDelegate>
@property(nonatomic, strong) GADAdLoader *adLoader;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
GADMultipleAdsAdLoaderOptions *multipleAdsOptions =
[[GADMultipleAdsAdLoaderOptions alloc] init];
multipleAdsOptions.numberOfAds = 5;
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
// The UIViewController parameter is nullable.
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ multipleAdsOptions ]];
self.adLoader.delegate = self;
[self.adLoader loadRequest:[GADRequest request]];
}
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd {
// A native ad has loaded, and can be displayed.
}
- (void)adLoaderDidFinishLoading:(GADAdLoader *) adLoader {
// The adLoader has finished loading ads, and a new request can be sent.
}
@end
Başarısız istekleri işleme
Yukarıdaki protokoller GADAdLoaderDelegate
protokolünü genişletir. Bu protokol
mesajı gönderilir.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
Doğal reklam etkinliklerinden haberdar olun
Doğal reklam etkileşimleriyle ilgili etkinlikler hakkında bildirim almak için yetki verilmiş kullanıcıyı ayarlayın özelliği:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
Ardından, aşağıdaki yetki verilmiş aramaları almak için GADNativeAdDelegate
özelliğini 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.
Listedeki yerel reklamlar kullanan uygulamalar, reklam listesini ö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).Doğal reklam önbelleğe almayı, yalnızca gerekenlerle sınırlayın. Örneğin, ön ö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 bellek alanına sahiptir ve yerel reklamları yok etmeden önbelleğe kaydeder aşırı bellek kullanımına yol açar.
Artık kullanılmayan doğal reklamları yok edin.
Reklamınızı gösterin
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.