Native Anzeigen

Native Anzeigen sind Anzeigen-Assets, die Nutzern über UI-Komponenten präsentiert werden, die für die Plattform nativ sind. Sie werden mit denselben Klassen dargestellt, die Sie bereits in Ihren Storyboards verwenden. Außerdem können sie 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 zugehörigen Assets enthält. Die App und nicht das Google Mobile Ads SDK ist dann für die Auslieferung verantwortlich.

Die Implementierung nativer Anzeigen umfasst im Wesentlichen zwei Schritte: das Laden einer Anzeige über das SDK und die anschließende Anzeige des Anzeigeninhalts in Ihrer App.

Auf dieser Seite erfahren Sie, wie Sie mit dem SDK native Anzeigen laden.

Vorbereitung

Immer mit Testanzeigen testen

Verwenden Sie beim Entwickeln und Testen Ihrer Apps Testanzeigen und keine Produktionsanzeigen.

Am einfachsten lassen sich Testanzeigen mit unserer dedizierten Test-Anzeigenblock-ID für native Anzeigen unter iOS laden:

/21775744923/example/native

Es wurde speziell so konfiguriert, dass für jede Anfrage Testanzeigen zurückgegeben werden. Sie können es in Ihren eigenen Apps beim Codieren, Testen und Entwickeln verwenden. Ersetzen Sie sie vor der Veröffentlichung Ihrer App durch Ihre eigene Anzeigenblock-ID.

Weitere Informationen zur Funktionsweise von Testanzeigen im Google Mobile Ads SDK finden Sie unter Testanzeigen.

Anzeigen laden

Native Anzeigen werden mit der Klasse GADAdLoader geladen, die Nachrichten gemäß dem GADAdLoaderDelegate-Protokoll an ihre Bevollmächtigten senden.

Neben dem systemdefinierten nativen Format können Sie auch eigene benutzerdefinierte native Anzeigenformate erstellen, die für direktverkaufte native Anzeigen verwendet werden können. Mit benutzerdefinierten nativen Anzeigenformaten können Sie beliebige strukturierte Daten an Ihre App übergeben. Diese Anzeigen werden durch die Klasse GADCustomNativeAd dargestellt.

Ad Loader initialisieren

Bevor Sie eine Anzeige laden können, müssen Sie das Ad Loader initialisieren. Im folgenden Code wird gezeigt, wie ein GADAdLoader initialisiert wird:

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;

Sie benötigen eine Anzeigenblock-ID (Sie können die Test-ID verwenden), Konstanten, die im Array adTypes übergeben werden müssen, um anzugeben, welche nativen Formate Sie anfordern möchten, sowie alle Optionen, die Sie im options-Parameter festlegen möchten. Eine Liste der möglichen Werte für den Parameter options finden Sie auf der Seite Einstellungen für native Anzeigen festlegen.

Das adTypes-Array sollte eine oder mehrere der folgenden Konstanten enthalten:

Ad Loader-Delegate implementieren

Der Ad Loader Delegate muss für Ihren Anzeigentyp spezifische Protokolle implementieren. Bei nativen Anzeigen enthält das GADNativeAdLoaderDelegate-Protokoll eine Nachricht, die an den Delegaten gesendet wird, wenn eine native Anzeige geladen wurde.

Swift

public func adLoader(_ adLoader: GADAdLoader,
            didReceive nativeAd: GADNativeAd)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveNativeAd:(GADNativeAd *)nativeAd;

Das GADCustomNativeAdLoaderDelegate-Protokoll enthält eine Nachricht, die an den Bevollmächtigten gesendet wird, wenn eine Anzeige mit benutzerdefinierter Vorlage geladen wurde.

Swift

func adLoader(_ adLoader: GADAdLoader,
  Receive customNativeAd: GADCustomNativeAd)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;

Anzeigenanfrage senden

Rufen Sie nach der Initialisierung von GADAdLoader die loadRequest:-Methode auf, um eine Anzeige anzufordern:

Swift

adLoader.load(GAMRequest())

Objective-C

[self.adLoader loadRequest:[GAMRequest request]];

Die Methode loadRequest: in GADAdLoader akzeptiert dieselben GAMRequest-Objekte wie Banner und Interstitials. Sie können Anfrageobjekte verwenden, um Targeting-Informationen hinzuzufügen, genau wie bei anderen Anzeigentypen.

Abschluss des Ladevorgangs ermitteln

Nachdem eine App loadRequest: aufgerufen hat, kann sie die Ergebnisse der Anfrage mithilfe von Aufrufen von folgenden Methoden abrufen:

Eine Anfrage für eine einzelne Anzeige führt zu einem Aufruf einer dieser Methoden.

Umgang mit fehlgeschlagenen Anfragen

Die oben genannten Protokolle erweitern das GADAdLoaderDelegate-Protokoll, das eine Nachricht definiert, die gesendet wird, wenn Anzeigen nicht geladen werden.

Swift

public func adLoader(_ adLoader: GADAdLoader,
    didFailToReceiveAdWithError error: NSError)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didFailToReceiveAdWithError:(NSError *)error;

Benachrichtigungen zu Ereignissen für native Anzeigen erhalten

Wenn Sie über Ereignisse informiert werden möchten, die sich auf die Interaktionen mit der nativen Anzeige beziehen, legen Sie die Delegating-Eigenschaft der nativen Anzeige fest:

Swift

nativeAd.delegate = self

Objective-C

nativeAd.delegate = self;

Implementieren Sie dann GADNativeAdDelegate, um die folgenden delegierten Aufrufe zu erhalten:

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.
}

Best Practices

Beachten Sie beim Laden von Anzeigen die folgenden Regeln.

  • In Apps, in denen native Anzeigen in einer Liste verwendet werden, sollte die Liste der Anzeigen vorab im Cache gespeichert werden.

  • Wenn Sie Anzeigen vorab im Cache speichern, leeren Sie den Cache und laden Sie die Seite nach einer Stunde neu.

  • Rufe loadRequest: erst dann für GADAdLoader noch einmal auf, wenn die vorherige Anfrage geladen wurde, wie durch adLoaderDidFinishLoading: angegeben.

  • Beschränken Sie das Caching nativer Anzeigen auf das Nötigste. Beim Pre-Caching sollten Sie beispielsweise nur die Anzeigen im Cache speichern, die sofort auf dem Bildschirm sichtbar sind. Native Anzeigen haben viel Arbeitsspeicherbedarf und das Caching nativer Anzeigen ohne sie zu zerstören, führt zu einer übermäßigen Speichernutzung.

  • Native Anzeigen löschen, wenn sie nicht mehr verwendet werden.

Anzeige schalten

Nachdem Sie eine Anzeige geladen haben, müssen Sie sie nur noch Ihren Nutzern präsentieren. Weitere Informationen finden Sie in unserem erweiterten Leitfaden zu nativen Anzeigen.