Native Anzeigen sind Anzeigen-Assets, die Nutzern über UI-Komponenten präsentiert werden, die nativ für die Plattform sind. Native Anzeigen werden unter Verwendung der gleichen Ansichtstypen dargestellt, mit denen Sie bereits Ihre Layouts erstellen. 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 mit den Assets. Die App und nicht Google Mobile Ads SDK ist dann für die Darstellung 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. Tipp: Weitere Informationen zu nativen Anzeigen finden Sie in unserem Playbook zu nativen Anzeigen.
Sie können sich hier auch einige Erfolgsgeschichten von Kunden ansehen: Fallstudie 1, Fallstudie 2.
Vorbereitung
Richten Sie zuerst Google Mobile Ads SDK ein.
Immer mit Testanzeigen testen
Verwenden Sie beim Erstellen und Testen Ihrer Apps Testanzeigen anstelle von Live-Anzeigen.
Testanzeigen lassen sich unter Android am einfachsten mit unserer speziellen Test-Anzeigenblock-ID für native Anzeigen laden:
ca-app-pub-3940256099942544/2247696110
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 vor der Veröffentlichung Ihrer App einfach durch Ihre eigene Anzeigenblock-ID.
Weitere Informationen zu Google Mobile Ads SDK Testanzeigen finden Sie unter Testanzeigen aktivieren.
Anzeigen laden
Native Anzeigen werden mit der Klasse AdLoader geladen, die eine eigene Klasse Builder 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 nativen Anzeigen sie empfangen kann. AdLoader fordert dann nur diese Typen an.
AdLoader erstellen
Der folgende Code zeigt, wie Sie einen AdLoader erstellen, mit dem native Anzeigen geladen werden können:
Java
Kotlin
Ersetzen Sie AD_UNIT_ID durch Ihre Testgeräte-ID.
Die Methode forNativeAd() ist dafür verantwortlich, AdLoader für das Format NativeAd vorzubereiten.
Wenn eine Anzeige erfolgreich geladen wurde, wird die Methode onNativeAdLoaded() des Listener-Objekts aufgerufen.
AdListener mit AdLoader einrichten (optional)
Beim Erstellen von AdLoader wird mit der Funktion withAdListener ein AdListener für den Loader festgelegt. Die Methode verwendet AdListener als einzigen Parameter, der Callbacks von AdLoader empfängt, wenn Ereignisse im Anzeigen-Lifecycle-Events stattfinden:
Java
adLoaderBuilder.withAdListener(
// Override AdListener callbacks here.
new AdListener() {});
Kotlin
adLoaderBuilder.withAdListener(
// Override AdListener callbacks here.
object : AdListener() {}
)
Anzeigenanfrage senden
Nachdem Sie einen AdLoader erstellt haben, können Sie damit Anzeigen anfordern.
Dafür stehen zwei Methoden zur Verfügung: loadAd() und loadAds().
loadAd()
Mit dieser Methode wird eine Anfrage für eine einzelne Anzeige gesendet.
Java
adLoader.loadAd(new AdRequest.Builder().build());
Kotlin
adLoader.loadAd(AdRequest.Builder().build())
loadAds()
Mit dieser Methode wird eine Anfrage für mehrere Anzeigen (bis zu fünf) gesendet:
Java
// Load three native ads.
adLoader.loadAds(new AdRequest.Builder().build(), 3);
Kotlin
// Load three native ads.
adLoader.loadAds(AdRequest.Builder().build(), 3)
Beide Methoden verwenden ein
AdRequest
Objekt als ersten Parameter. Dies ist dieselbe
AdRequest Klasse, die für Banner und Interstitials verwendet wird.
Sie können Methoden der AdRequest Klasse verwenden,
um Targeting-Informationen hinzuzufügen, genau wie
bei anderen Anzeigenformaten.
Mehrere Anzeigen laden (optional)
Die Methode loadAds() verwendet einen zusätzlichen Parameter: die Anzahl der Anzeigen, die das SDK für die Anfrage laden soll. Diese Zahl 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 loadAds()-Methode 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.
Callbacks
Nach einem Aufruf von loadAd() wird ein einzelner Callback an die zuvor definierten
Listener-Methoden gesendet, um das native Anzeigenobjekt zu liefern oder einen Fehler zu melden.
Nach einem Aufruf von loadAds() werden mehrere solcher Callbacks ausgeführt (mindestens einer und höchstens die Anzahl der angeforderten Anzeigen). Apps, die mehrere Anzeigen anfordern, sollten in ihren Callback-Implementierungen AdLoader.isLoading() aufrufen, um festzustellen, ob der Ladevorgang abgeschlossen ist.
Hier ein Beispiel, wie Sie isLoading() im Callback onNativeAdLoaded() prüfen:
Java
adLoaderBuilder
.forNativeAd(
nativeAd -> {
// This callback is invoked when a native ad is successfully loaded.
})
.build();
Kotlin
adLoaderBuilder
.forNativeAd { nativeAd ->
// This callback is invoked when a native ad is successfully loaded.
}
.build()
Ressourcen freigeben
Verwenden Sie die Methode destroy() für geladene native Anzeigen. Dadurch werden verwendete Ressourcen freigegeben und Speicherlecks vermieden.
Prüfen Sie, ob alle NativeAd-Verweise in der onDestroy()-Methode Ihrer Aktivität gelöscht werden.
Achten Sie darauf, dass im onNativeAdLoaded-Callback alle vorhandenen nativen Anzeigen gelöscht werden, auf die nicht mehr verwiesen wird.
Eine weitere wichtige Prüfung ist, ob die Aktivität gelöscht wird. Wenn dies der Fall ist, rufen Sie destroy() für die zurückgegebene Anzeige auf und beenden Sie die Ausführung sofort:
Java
nativeAd.destroy();
Kotlin
nativeAd.destroy()
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 ihn nach einer Stunde neu.
- Rufen Sie
loadAd()oderloadAds()erst für einAdLoaderauf, wenn das Laden der ersten Anfrage abgeschlossen ist.
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.
Hardwarebeschleunigung für Videoanzeigen
Damit Videoanzeigen in Ihren nativen Anzeigenansichten richtig angezeigt werden, Hardware beschleunigung muss aktiviert sein.
Die Hardwarebeschleunigung ist standardmäßig aktiviert, kann aber für einige Apps deaktiviert werden. Wenn dies auf Ihre App zutrifft, empfehlen wir, die Hardwarebeschleunigung für Aktivitätsklassen zu aktivieren, in denen Anzeigen verwendet werden.
Hardwarebeschleunigung aktivieren
Wenn Ihre App bei global aktivierter Hardwarebeschleunigung nicht ordnungsgemäß funktioniert, können Sie diese auch für einzelne Aktivitäten ein- und ausschalten. Verwenden Sie das Attribut android:hardwareAccelerated für die Elemente <application> und <activity> in Ihrem AndroidManifest.xml, 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 Optionen zum Steuern der Hardwarebeschleunigung finden Sie im Leitfaden zur Hardwarebeschleunigung. Einzelne Anzeigenaufrufe können nicht für die Hardwarebeschleunigung aktiviert werden, wenn die Aktivität deaktiviert ist. Die Aktivität selbst muss also die Hardwarebeschleunigung aktiviert haben.
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.