Mit ein paar Ä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 AdLoader Klasse geladen, die ihre
eigene AdLoader.Builder Klasse hat, um sie bei der Erstellung anzupassen. Wenn eine App Listener zum AdLoader hinzufügt, während sie ihn erstellt, gibt sie an, welche Arten von Anzeigenformaten sie empfangen kann. Der 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 dem AdLoader beim Erstellen einen OnAdManagerAdViewLoadedListener hinzufügen, wird festgelegt, dass Banneranzeigen mit nativen Anzeigen konkurrieren sollen, um die Anfrage zu erfüllen.
Der folgende Code zeigt, wie Sie einen AdLoader erstellen, der entweder eine native Anzeige oder eine Banneranzeige in einer einzigen Anfrage laden 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()
Die Methode forAdManagerAdView() bereitet den AdLoader darauf vor, Banneranzeigen zu empfangen.
Beim Aufrufen von forAdManagerAdView() muss eine Liste mit gültigen Anzeigengrößen variabler Länge zusammen mit einem OnAdManagerAdViewLoadedListener angegeben werden.
Für eine gültige Anzeigenanfrage muss mindestens eine gültige Anzeigengröße angegeben werden. Wenn eine Banneranzeige erfolgreich geladen wurde, wird die Methode onAdManagerAdViewLoaded() des angegebenen Listener-Objekts aufgerufen.
Das AdViewOptions-Objekt festlegen
Die letzte Funktion, die bei der Erstellung des AdLoader enthalten ist, 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 Objekt AdManagerAdViewOptions können Publisher bestimmte Optionen für Banner festlegen, die vom AdLoader geladen werden, z. B.:
setManualImpressionsEnabled()- Aktiviert die manuelle Impressionenerfassung für Google Ad Manager-Reservierungen. Apps, die manuelle Impressionen verwenden, können selbst bestimmen, wann eine Impression erfasst werden soll. Dazu rufen sie
AdManagerAdView.recordManualImpression()auf.