Banneranzeigen sind rechteckige Anzeigen, die einen Teil der App-Oberfläche einnehmen. Sie bleiben auf dem Bildschirm, während Nutzer mit der App interagieren. Sie sind entweder oben oder unten auf dem Bildschirm verankert oder im Content platziert, sodass sie sichtbar bleiben, wenn der Nutzer scrollt. Banneranzeigen können nach einer bestimmten Zeit automatisch aktualisiert werden. Weitere Informationen finden Sie unter Banneranzeigen.
In diesem Leitfaden werden die ersten Schritte mit verankerten adaptiven Banneranzeigen beschrieben. Dabei wird die Leistung maximiert, indem die Anzeigengröße für jedes Gerät mit der von Ihnen angegebenen Anzeigenbreite optimiert wird.
Verankerte adaptive Banneranzeigen haben ein festes Seitenverhältnis, im Gegensatz zu herkömmlichen Anzeigen mit fester Größe. Das Seitenverhältnis entspricht dem Branchenstandard von 320 × 50. Sobald Sie die gesamte verfügbare Breite angegeben haben, wird eine Anzeige mit der optimalen Höhe für diese Breite zurückgegeben. Die optimale Höhe ändert sich nicht bei Anfragen vom selben Gerät und die umgebenden Ansichten müssen sich nicht bewegen, wenn die Anzeige aktualisiert wird.
Vorbereitung
- Führen Sie die Schritte im Startleitfaden aus.
Verwenden Sie immer Testanzeigen
Verwenden Sie beim Erstellen und Testen Ihrer Apps Testanzeigen anstelle von aktiven Produktionsanzeigen. Andernfalls kann Ihr Konto gesperrt werden.
Am einfachsten lassen sich Testanzeigen laden, wenn Sie die spezielle Testanzeigenblock-ID für Android-Banner verwenden:
ca-app-pub-3940256099942544/9214589741
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 einfach durch Ihre Anzeigenblock-ID.
Weitere Informationen zur Funktionsweise von Testanzeigen im Mobile Ads SDK finden Sie unter Testanzeigen.
AdView zum Layout hinzufügen
Der erste Schritt zum Einblenden eines Banners besteht darin, AdView
in das Layout Ihrer App einzufügen:
Java
// Create a new ad view.
adView = new AdView(this);
adView.setAdUnitId(AD_UNIT_ID);
adView.setAdSize(getAdSize());
// Replace ad container with new ad view.
adContainerView.removeAllViews();
adContainerView.addView(adView);
Kotlin
// Create a new ad view.
val adView = AdView(this)
adView.adUnitId = AD_UNIT_ID
adView.setAdSize(adSize)
this.adView = adView
// Replace ad container with new ad view.
binding.adViewContainer.removeAllViews()
binding.adViewContainer.addView(adView)
Anzeige laden
Sobald AdView eingerichtet ist, besteht der nächste Schritt darin, eine Anzeige zu laden. Dazu wird die Methode loadAd()
in der Klasse AdView
verwendet. Er nimmt einen AdRequest
-Parameter an, der Laufzeitinformationen wie Targeting-Informationen zu einer einzelnen Anzeigenanfrage enthält.
Hier ein Beispiel für das Laden einer Anzeige:
Java
// Start loading the ad in the background.
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
Kotlin
// Start loading the ad in the background.
val adRequest = AdRequest.Builder().build()
adView.loadAd(adRequest)
Wenn die Anzeige nicht geladen wird, müssen Sie nicht explizit eine weitere anfordern, sofern Sie Ihren Anzeigenblock für die Aktualisierung konfiguriert haben. Das Google Mobile Ads SDK berücksichtigt die Aktualisierungsrate, die Sie in der AdMob-Weboberfläche angegeben haben. Wenn Sie die Aktualisierung nicht aktiviert haben, müssen Sie eine neue Anfrage stellen.
Fertig! In Ihrer App können jetzt Banneranzeigen ausgeliefert werden.
Anzeigenereignisse
Im Lebenszyklus einer Anzeige können Sie auf eine Reihe von Ereignissen warten, z. B. das Laden, Anzeigenimpression und -klick sowie das Öffnen und Schließen von Anzeigen. Wir empfehlen, den Callback vor dem Laden des Banners festzulegen.Java
adView.setAdListener(new AdListener() {
@Override
public void onAdClicked() {
// Code to be executed when the user clicks on an ad.
}
@Override
public void onAdClosed() {
// Code to be executed when the user is about to return
// to the app after tapping on an ad.
}
@Override
public void onAdFailedToLoad(LoadAdError adError) {
// Code to be executed when an ad request fails.
}
@Override
public void onAdImpression() {
// Code to be executed when an impression is recorded
// for an ad.
}
@Override
public void onAdLoaded() {
// Code to be executed when an ad finishes loading.
}
@Override
public void onAdOpened() {
// Code to be executed when an ad opens an overlay that
// covers the screen.
}
});
Kotlin
adView.adListener = object: AdListener() {
override fun onAdClicked() {
// Code to be executed when the user clicks on an ad.
}
override fun onAdClosed() {
// Code to be executed when the user is about to return
// to the app after tapping on an ad.
}
override fun onAdFailedToLoad(adError : LoadAdError) {
// Code to be executed when an ad request fails.
}
override fun onAdImpression() {
// Code to be executed when an impression is recorded
// for an ad.
}
override fun onAdLoaded() {
// Code to be executed when an ad finishes loading.
}
override fun onAdOpened() {
// Code to be executed when an ad opens an overlay that
// covers the screen.
}
}
Jede der überschreibbaren Methoden in AdListener
entspricht einem Ereignis im Lebenszyklus einer Anzeige.
Überschreibbare Methoden | |
---|---|
onAdClicked() |
Die Methode onAdClicked() wird aufgerufen, wenn ein Klick für eine Anzeige erfasst wird.
|
onAdClosed() |
Die Methode onAdClosed() wird aufgerufen, wenn ein Nutzer nach dem Ansehen der Ziel-URL einer Anzeige zur App zurückkehrt. Deine App kann damit angehaltene Aktivitäten fortsetzen oder andere Arbeiten ausführen, die erforderlich sind, um sich auf eine Interaktion vorzubereiten.
Eine Implementierung der AdListener-Methoden in der Android API-Demo-App finden Sie im AdMob AdListener-Beispiel.
|
onAdFailedToLoad() |
Die Methode onAdFailedToLoad() ist die einzige, die einen Parameter enthält. Der Fehlerparameter vom Typ LoadAdError beschreibt, welcher Fehler aufgetreten ist. Weitere Informationen finden Sie in der Dokumentation zur Fehlerbehebung bei Anzeigenladefehlern.
|
onAdImpression() |
Die Methode onAdImpression() wird aufgerufen, wenn eine Impression für eine Anzeige erfasst wird.
|
onAdLoaded() |
Die Methode onAdLoaded() wird ausgeführt, wenn eine Anzeige vollständig geladen wurde. Hier kannst du das Hinzufügen von AdView zu deiner Aktivität oder deinem Fragment so lange verzögern, bis du dir sicher bist, dass eine Anzeige geladen wird.
|
onAdOpened() |
Die Methode onAdOpened() wird aufgerufen, wenn eine Anzeige ein Overlay öffnet, das den Bildschirm bedeckt.
|
Hardwarebeschleunigung für Videoanzeigen
Damit Videoanzeigen in Ihren Banneranzeigen ausgeliefert werden können, muss die Hardwarebeschleunigung aktiviert sein.
Die Hardwarebeschleunigung ist standardmäßig aktiviert, kann aber von einigen Apps deaktiviert werden. Wenn das auf Ihre App zutrifft, empfehlen wir, die Hardwarebeschleunigung für Activity
-Klassen zu aktivieren, in denen Anzeigen verwendet werden.
Hardwarebeschleunigung aktivieren
Wenn sich Ihre App nicht richtig verhält, wenn die Hardwarebeschleunigung global aktiviert ist, können Sie sie auch für einzelne Aktivitäten steuern. Du kannst das android:hardwareAccelerated
-Attribut für die Elemente <application>
und <activity>
in deiner AndroidManifest.xml
verwenden, um die Hardwarebeschleunigung zu aktivieren oder zu deaktivieren. Im folgenden Beispiel wird die Hardwarebeschleunigung für die gesamte App aktiviert, aber für eine Aktivität deaktiviert:
<application android:hardwareAccelerated="true">
<!-- For activities that use ads, hardwareAcceleration should be true. -->
<activity android:hardwareAccelerated="true" />
<!-- For activities that don't use ads, hardwareAcceleration can be false. -->
<activity android:hardwareAccelerated="false" />
</application>
Weitere Informationen zu den Optionen zur Steuerung der Hardwarebeschleunigung finden Sie im Leitfaden zur Hardwarebeschleunigung. Hinweis: Die Hardwarebeschleunigung kann nicht für einzelne Anzeigenaufrufe aktiviert werden, wenn die Aktivität deaktiviert ist. Die Hardwarebeschleunigung muss also für die Aktivität selbst aktiviert sein.
Zusätzliche Ressourcen
Beispiele auf GitHub
Nächste Schritte
Minimierbare Banner
Minimierbare Banneranzeigen sind Banneranzeigen, die anfänglich als größeres Overlay dargestellt werden und eine Schaltfläche zum Minimieren der Anzeige haben. Sie können sie verwenden, um die Leistung weiter zu optimieren. Weitere Informationen finden Sie unter Minimierbare Banneranzeigen.
Adaptive Inline-Banner
Adaptive Inline-Banner sind im Vergleich zu adaptiven Ankerbannern größer und höher. Sie haben eine variable Höhe und können so hoch sein wie der Bildschirm des Geräts. Für Apps, in denen Banneranzeigen in scrollbaren Inhalten platziert werden, werden adaptive Inline-Banner anstelle von adaptiven Ankerbannern empfohlen. Weitere Informationen finden Sie unter Inline-Adaptive Banner.