Native Anzeigen sind Anzeigen-Assets, die Nutzern über UI-Komponenten präsentiert werden, die nativ für die Plattform sind. Sie werden mit denselben Klassen dargestellt, die Sie bereits in Ihren Storyboards verwenden, und können so formatiert werden, dass sie mit dem visuellen Design Ihrer App übereinstimmen.
Wenn eine native Anzeige geladen wird, erhält Ihre App ein Anzeigenobjekt, das die Assets der Anzeige enthält, und die App—und nicht Google Mobile Ads SDK—ist dann für die Darstellung der Anzeige verantwortlich.
Im Allgemeinen besteht die erfolgreiche Implementierung nativer Anzeigen aus zwei Phasen: eine Anzeige wird mit dem SDK geladen und anschließend wird der Anzeigeninhalt in Ihrer App dargestellt.
Auf dieser Seite erfahren Sie, wie Sie mit dem SDK native Anzeigen laden .
Vorbereitung
Richten Sie Google Mobile Ads SDK ein, bevor Sie fortfahren.
Immer mit Testanzeigen testen
Verwenden Sie beim Erstellen und Testen Ihrer Apps Testanzeigen anstelle von Live-Anzeigen.
Testanzeigen lassen sich unter iOS am einfachsten mit unserer speziellen Test-Anzeigenblock-ID für native Anzeigen laden:
ca-app-pub-3940256099942544/3986624511
Diese ID ist speziell so konfiguriert, dass bei jeder Anfrage Testanzeigen zurückgegeben werden. Sie können sie beim Programmieren, Testen und Debuggen in Ihren eigenen Apps verwenden. Ersetzen Sie sie einfach durch Ihre eigene Anzeigenblock-ID, bevor Sie Ihre App veröffentlichen.
Weitere Informationen zu Google Mobile Ads SDK Testanzeigen finden Sie unter Testanzeigen aktivieren.
Anzeigen laden
Native Anzeigen werden mit der
GADAdLoader
Klasse geladen, die gemäß dem
GADAdLoaderDelegate
Protokoll Nachrichten an ihre Delegaten sendet.
Anzeigenladeprogramm initialisieren
Bevor Sie eine Anzeige laden können, müssen Sie das Anzeigenladeprogramm initialisieren.
Der folgende Code zeigt, wie Sie ein GADAdLoader initialisieren:
Swift
Ersetzen Sie nativeAdUnitID durch Ihre Anzeigenblock-ID.
Objective-C
Ersetzen Sie kNativeAdUnitID durch Ihre Anzeigenblock-ID.
Sie benötigen eine Anzeigenblock-ID (Sie können die Test-ID verwenden), Konstanten, die Sie im Array adTypes übergeben, um anzugeben, welche nativen Formate Sie anfordern möchten, und alle Optionen, die Sie im Parameter options festlegen möchten. Eine Liste der möglichen
Werte für den options Parameter finden Sie auf der Seite Optionen für native Anzeigen
festlegen.
Das adTypes Array sollte
diese Konstante enthalten :
Delegaten für das Anzeigenladeprogramm implementieren
Der Delegat für das Anzeigenladeprogramm muss Protokolle implementieren, die für Ihren Anzeigentyp spezifisch sind.
Für native Anzeigen enthält das Protokoll GADNativeAdLoaderDelegate eine Nachricht, die an den Delegaten gesendet wird, wenn eine native Anzeige geladen wurde.
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.
}
Anzeigenanfrage senden
Nachdem Sie GADAdLoader initialisiert haben, rufen Sie die Methode loadRequest: auf, um eine Anzeige anzufordern:
Swift
adLoader.load(Request())
Objective-C
[self.adLoader loadRequest:[GADRequest request]];
Die
loadRequest:
Methode in
GADAdLoader
akzeptiert dieselben
GADRequest
Objekte wie Banner und Interstitials. Sie können Anfrageobjekte verwenden, um Targeting-Informationen hinzuzufügen, genau wie bei anderen Anzeigentypen.
Mehrere Anzeigen laden (optional)
Wenn Sie mehrere Anzeigen in einer einzigen Anfrage laden möchten, legen Sie das
GADMultipleAdsAdLoaderOptions
Objekt fest, wenn Sie ein GADAdLoader initialisieren.
Swift
Objective-C
Die Anzahl der Anzeigen pro Anfrage ist auf fünf begrenzt. Es ist nicht garantiert, dass das SDK die genaue Anzahl der angeforderten Anzeigen zurückgibt.
Die zurückgegebenen Google Anzeigen unterscheiden sich alle voneinander. Anzeigen aus reserviertem Inventar oder von Drittanbieterkäufern sind jedoch nicht garantiert eindeutig.
Verwenden Sie die Klasse GADMultipleAdsAdLoaderOptions nicht, wenn Sie Vermittlung nutzen, da Anfragen für mehrere native Anzeigen nicht für Anzeigenblock-IDs funktionieren, die für die Vermittlung konfiguriert wurden.
Fertigstellung des Ladevorgangs ermitteln
Nachdem eine App loadRequest: aufgerufen hat, kann sie die Ergebnisse der Anfrage mit den folgenden Aufrufen abrufen:
adLoader:didFailToReceiveAdWithError:inGADAdLoaderDelegateadLoader:didReceiveNativeAd:inGADNativeAdLoaderDelegate
Eine Anfrage für eine einzelne Anzeige führt zu einem Aufruf einer dieser Methoden.
Eine Anfrage für mehrere Anzeigen führt zu mindestens einem Callback zu den oben genannten Methoden, aber nicht mehr als die maximale Anzahl der angeforderten Anzeigen.
Außerdem bietet GADAdLoaderDelegate den Callback adLoaderDidFinishLoading. Diese Delegatenmethode gibt an, dass ein Anzeigenladeprogramm das Laden von Anzeigen abgeschlossen hat und keine weiteren Anzeigen oder Fehler für die Anfrage gemeldet werden. Hier ein Beispiel für die Verwendung beim gleichzeitigen Laden mehrerer nativer Anzeigen:
Swift
func adLoaderDidFinishLoading(_ adLoader: AdLoader) {
// The adLoader has finished loading ads.
}
Objective-C
- (void)adLoaderDidFinishLoading:(GADAdLoader *)adLoader {
// The adLoader has finished loading ads.
}
Fehlgeschlagene Anfragen verarbeiten
Die Protokolle erweitern das Protokoll GADAdLoaderDelegate, das eine Nachricht definiert, die gesendet wird, wenn Anzeigen nicht geladen werden können.
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.
}
Benachrichtigungen zu Ereignissen für native Anzeigen erhalten
Wenn Sie über Ereignisse im Zusammenhang mit den Interaktionen mit nativen Anzeigen benachrichtigt werden möchten, legen Sie die Delegateneigenschaft der nativen Anzeige fest:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
Implementieren Sie dann
GADNativeAdDelegate
, um die folgenden Delegatenaufrufe zu erhalten:
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.
}
Best Practices
Beachten Sie beim Laden von Anzeigen die folgenden Regeln:
Bei Apps, in denen native Anzeigen in einer Liste verwendet werden, sollte die Liste der Anzeigen vorab im Cache gespeichert werden.
Leeren Sie beim Pre-Caching von Anzeigen den Cache und laden Sie die Anzeigen nach einer Stunde neu.
Rufen Sie
loadRequest:für einGADAdLoadererst dann wieder auf, wenn der vorherige Ladevorgang abgeschlossen ist, wie durchadLoaderDidFinishLoading:angegeben.Beschränken Sie das Caching nativer Anzeigen auf das, was wirklich benötigt wird. Beim Pre-Caching sollten Sie beispielsweise nur die Anzeigen im Cache speichern, die sofort auf dem Bildschirm zu sehen sind. Native Anzeigen haben einen großen Speicherbedarf. Wenn Sie native Anzeigen im Cache speichern, ohne sie zu löschen, führt das zu einer übermäßigen Speichernutzung.
Löschen Sie native Anzeigen, wenn sie nicht mehr verwendet werden.
Anzeige darstellen
Nachdem Sie eine Anzeige geladen haben, müssen Sie sie nur noch Ihren Nutzern präsentieren. Hier finden Sie eine Anleitung zu erweiterten nativen Anzeigen.