Mit einigen Änderungen an Ihrem Code können Sie native Anzeigen und Banneranzeigen in Ihren Anzeigenanfragen kombinieren.
Vorbereitung
- Google Mobile Ads SDK-Version 11.0.0 oder höher
- Führen Sie die Schritte im Startleitfaden aus.
Anzeige laden
Benutzerdefiniert gerenderte native Anzeigen werden mit der Klasse AdLoader
geladen, die eine eigene Klasse AdLoader.Builder
hat, um sie bei der Erstellung anzupassen. Durch das Hinzufügen von Listenern zum AdLoader
beim Erstellen einer App wird angegeben, welche Arten von Anzeigenformaten sie empfangen kann. Die AdLoader
fordert dann nur diese Typen an.
Das AdLoader
-Objekt kann auch so konfiguriert werden, dass Anzeigenanfragen gestellt werden, die entweder zu einer Banneranzeige oder einer nativen Anzeige führen können. Wenn Sie beim Erstellen des AdLoader
ein OnAdManagerAdViewLoadedListener
hinzufügen, geben Sie an, dass Banneranzeigen mit nativen Anzeigen konkurrieren sollen, um die Anfrage auszuführen.
Der folgende Code zeigt, wie Sie ein AdLoader
-Objekt erstellen, mit dem in einer einzelnen Anfrage entweder eine Native Ad oder eine Banneranzeige geladen werden kann:
Java
AdLoader adLoader = new AdLoader.Builder(context, "/21775744923/example/native-and-banner") .forNativeAd(new NativeAd.OnNativeAdLoadedListener() { @Override public void onNativeAdLoaded(NativeAd nativeAd) { // Show the ad. } }) .forAdManagerAdView(new OnAdManagerAdViewLoadedListener() { @Override public void onAdManagerAdViewLoaded(AdManagerAdView adView) { // Show the banner ad. } }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE) .withAdListener(new AdListener() { @Override public void onAdFailedToLoad(LoadAdError error) { // Handle the failure by logging, altering the UI, etc. } }) .withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build();
Kotlin
val adLoader = AdLoader.Builder(this, "/21775744923/example/native-and-banner") .forNativeAd { nativeAd -> // Show the ad. } .forAdManagerAdView({ adView -> // Show the banner ad. }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE) .withAdListener(object: AdListener() { override fun onAdFailedToLoad(adError: LoadAdError) { // Handle the failure by logging, altering the UI, etc. } }) .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build()
Mit der Methode forAdManagerAdView()
wird die AdLoader
für den Empfang von Banneranzeigen vorbereitet.
Beim Aufrufen von forAdManagerAdView()
muss neben einem OnAdManagerAdViewLoadedListener
eine Liste mit variabler Länge gültiger Anzeigengrößen angegeben werden.
Damit eine Anzeigenanfrage gültig ist, muss mindestens eine gültige Anzeigengröße angegeben werden. Wenn eine Banneranzeige erfolgreich geladen wurde, wird die onAdManagerAdViewLoaded()
-Methode des angegebenen Listener-Objekts aufgerufen.
AdViewOptions-Objekt festlegen
Die letzte Funktion, die beim Erstellen von AdLoader
verwendet wird, ist eine weitere optionale Methode: withAdManagerAdViewOptions()
.
Java
.withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual banner options settings. .build()
Kotlin
.withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual banner options settings. .build()
Mit dem AdManagerAdViewOptions
-Objekt können Publisher bestimmte Optionen für Banner festlegen, die von AdLoader
geladen werden, z. B.:
setManualImpressionsEnabled()
- Aktiviert die manuelle Berichterstellung zu Impressionen für Google Ad Manager-Reservierungen. Bei Apps, die manuelle Impressionen verwenden, kann selbst bestimmt werden, wann eine Impression erfasst werden soll. Dazu wird
AdManagerAdView.recordManualImpression()
aufgerufen.