Doğal reklamlar, kullanıcılara sunulan kullanıcı arayüzü bileşenleri üzerinden platformda yerleşik olarak bulunuyor. 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.
Yerel reklam yüklendiğinde uygulamanız reklam öğesini içeren bir reklam nesnesi alır. Google Mobile Ads SDK'sı yerine uygulama göstermekten sorumludur.
Genel olarak, doğal reklamları başarıyla uygulamanın iki bölümü vardır: SDK kullanarak reklam yükleme ve ardından reklam içeriğini uygulamanızda gösterme.
Bu sayfada, Google Etiket Yöneticisi'ni kullanarak yerel reklamlar.
Ön koşullar
- Başlangıç kılavuzunu tamamlayın.
Her zaman test reklamlarıyla test etme
Uygulamalarınızı oluştururken ve test ederken, uygulamalarınızın yanı sıra üretim reklamlarıdır.
Test reklamlarını yüklemenin en kolay yolu, aşağıdakiler için özel test reklam birimi kimliğimizi kullanmaktır: iOS'te yerel reklamlar:
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. Tek yapmanız gereken uygulamanızı yayınlamadan önce bunu kendi reklam birimi kimliğinizle değiştirin.
Google Mobile Ads SDK'sının test reklamlarının işleyiş şekli hakkında daha fazla bilgi için Test reklamları.
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
Yetki verilmiş reklam yükleyicisinin, 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. Dosya eklemek için istek nesnelerini kullanabilirsiniz.
hedefleme bilgilerini kullanabilirsiniz.
diğer reklam türlerinde olduğu gibidir.
Birden çok reklam yükleyin (isteğe bağlı)
Tek bir istekte birden çok reklam yüklemek için
GADMultipleAdsAdLoaderOptions
nesnesini başlatan GADAdLoader
.
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ış envanterin veya üçüncü taraf alıcıların benzersiz olacağı garanti edilmez.
Uyumlulaştırmadan yararlanıyorsanız GADMultipleAdsAdLoaderOptions
sınıfını kullanmayın.
birden fazla doğal reklam isteği, mevcut reklam birimi kimliği için henüz çalışmadığından
uyumlulaştırma için yapılandırıldı.
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:
adLoader:didFailToReceiveAdWithError:
GADAdLoaderDelegate
içindeadLoader:didReceiveNativeAd:
GADNativeAdLoaderDelegate
içinde
Tek bir reklam isteği, bu yöntemlerden birine 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 yetki yöntemi, reklam yükleyicinin yüklemeyi tamamladığını gösterir
gösterilir ve istek için başka hiçbir reklam veya hata bildirilmez. 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;
Daha sonra
GADNativeAdDelegate
için aşağıdaki delege çağrılarını alabilirsiniz:
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ı önbelleğe alırken önbelleğinizi temizleyin ve bir saat sonra yeniden yükleyin.
Önceki isteğe kadar
GADAdLoader
üzerindenloadRequest:
adlı kişiyi bir daha aramayın Yüklemeyi bitirir (adLoaderDidFinishLoading:
ile belirtildiği gibi).
Reklamınızı gösterin
Bir reklamı yükledikten sonra geriye kalan tek şey onu kullanıcılarınıza göstermektir. Yerel Gelişmiş rehberimizi inceleyin.