Interstitial-Anzeigen sind Vollbildanzeigen, die die Benutzeroberfläche der Host-App verdecken. Sie werden in der Regel an natürlichen Übergangspunkten innerhalb einer App angezeigt, beispielsweise während der Pause zwischen den Levels eines Spiels. Wenn eine App eine Interstitial-Anzeige einblendet, kann der Nutzer entweder auf die Anzeige tippen und zu ihrer Zielseite weitergeleitet werden oder die Anzeige schließen und zur App zurückkehren. Fallstudie.
In diesem Leitfaden wird beschrieben, wie Sie Interstitial-Anzeigen in eine Unity-App einbinden.
Vorbereitung
Richten Sie zuerst ein Google Mobile Ads Unity Plugin.
Immer mit Testanzeigen testen
Der folgende Beispielcode enthält eine Anzeigenblock-ID, mit der Sie Testanzeigen anfordern können. Sie ist speziell so konfiguriert, dass für jede Anfrage Testanzeigen anstelle von Produktionsanzeigen zurückgegeben werden. Daher ist die Verwendung sicher.
Nachdem Sie eine App in der AdMob-Weboberfläche registriert und eigene Anzeigenblock IDs für die Verwendung in Ihrer App erstellt haben, müssen Sie Ihr Gerät während der Entwicklung explizit als Test Gerät konfigurieren.
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
Google Mobile Ads Unity Plugin initialisieren
Bevor Sie Anzeigen laden, muss Ihre App Google Mobile Ads Unity Plugin initialisieren. Rufen Sie dazu
MobileAds.Initialize() auf. Dies muss nur einmal erfolgen, idealerweise beim Start der App.
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize Google Mobile Ads Unity Plugin.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
Wenn Sie die Vermittlung verwenden, warten Sie, bis der Callback erfolgt ist, bevor Sie Anzeigen laden. So wird sichergestellt, dass alle Vermittlungsadapter initialisiert sind.
Interstitial-Anzeige laden
Das Laden einer Interstitial-Anzeige erfolgt über die statische Methode Load() in der Klasse InterstitialAd. Für die Methode zum Laden sind eine Anzeigenblock-ID, ein AdRequest-Objekt und ein Completion-Handler erforderlich, der aufgerufen wird, wenn das Laden der Anzeige erfolgreich ist oder fehlschlägt. Das geladene InterstitialAd-Objekt wird als Parameter im Completion-Handler bereitgestellt. Im folgenden Beispiel wird eine Interstitial-Anzeige geladen:
Ersetzen Sie AD_UNIT_ID durch Ihre Anzeigenblock-ID.
Interstitial-Anzeige einblenden
Rufen Sie die Methode Show() für die InterstitialAd-Instanz auf, um eine geladene Interstitial-Anzeige einzublenden. Anzeigen können einmal pro Ladevorgang eingeblendet werden. Verwenden Sie die Methode CanShowAd(), um zu prüfen, ob die Anzeige bereit ist, eingeblendet zu werden.
if (interstitialAd != null && interstitialAd.CanShowAd())
{
interstitialAd.Show();
}
Auf Ereignisse von Interstitial-Anzeigen warten
Sie können das Verhalten Ihrer Anzeige weiter anpassen, indem Sie eine Reihe von Ereignissen im Lebenszyklus der Anzeige abfangen. Im folgenden Beispiel wird auf Anzeigenereignisse gewartet:
interstitialAd.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
interstitialAd.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
interstitialAd.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
interstitialAd.OnAdFullScreenContentOpened += () =>
{
// Raised when the ad opened full screen content.
};
interstitialAd.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
interstitialAd.OnAdFullScreenContentFailed += (AdError error) =>
{
// Raised when the ad failed to open full screen content.
};
Interstitial-Anzeige bereinigen
Wenn Sie mit einer InterstitialAd fertig sind, rufen Sie die Methode Destroy() auf, bevor Sie die entsprechende Referenz löschen:
if (interstitialAd != null)
{
interstitialAd.Destroy();
}
Dadurch wird das Plug-in benachrichtigt, dass das Objekt nicht mehr verwendet wird und der von ihm belegte Speicher freigegeben werden kann. Wenn Sie diese Methode nicht aufrufen, kommt es zu Speicherlecks.
Nächste Interstitial-Anzeige vorab laden
Interstitial-Anzeigen sind Einmalobjekte. Das bedeutet, dass das Objekt nicht noch einmal verwendet werden kann, nachdem eine Interstitial-Anzeige eingeblendet wurde. Wenn Sie eine weitere Interstitial-Anzeige anfordern möchten, erstellen Sie ein neues InterstitialAd-Objekt.
Um eine Interstitial-Anzeige für die nächste Impression vorzubereiten, laden Sie sie vorab, sobald das Anzeigenereignis OnAdFullScreenContentClosed oder OnAdFullScreenContentFailed ausgelöst wird.
Best Practices
- Überlegen Sie, ob Interstitial-Anzeigen der richtige Anzeigentyp für Ihre App sind.
- Interstitial-Anzeigen eignen sich am besten für Apps mit natürlichen Übergangspunkten. Ein solcher Punkt ist beispielsweise das Ende einer Aufgabe in einer App, etwa wenn ein Bild geteilt oder ein Level in einem Spiel abgeschlossen wurde. Überlegen Sie, an welchen Stellen im Ablauf Ihrer App Interstitial-Anzeigen am besten eingeblendet werden und wie der Nutzer wahrscheinlich reagieren wird.
- Pausieren Sie die Aktion, wenn eine Interstitial-Anzeige eingeblendet wird.
- Es gibt verschiedene Arten von Interstitial-Anzeigen, z. B. Text-, Bild- oder Videoanzeigen. Wenn Ihre App eine Interstitial-Anzeige einblendet, muss sie auch die Verwendung einiger Ressourcen unterbrechen, damit die Anzeige sie nutzen kann. Wenn Sie beispielsweise den Aufruf zum Einblenden einer Interstitial-Anzeige ausführen, pausieren Sie die Audioausgabe Ihrer App. Sie können die Wiedergabe von Sounds im Ereignis
OnAdFullScreenContentClosed()fortsetzen, das aufgerufen werden kann, wenn der Nutzer die Interaktion mit der Anzeige beendet hat. Außerdem sollten Sie alle rechenintensiven Aufgaben, z. B. eine Spielschleife, vorübergehend anhalten, während die Anzeige eingeblendet wird. So wird verhindert, dass der Nutzer langsame oder nicht reagierende Grafiken oder ruckelnde Videos sieht. - Überhäufen Sie die Nutzer nicht mit Anzeigen.
- Die Häufigkeit von Interstitial-Anzeigen in Ihrer App zu erhöhen, mag zwar eine gute Möglichkeit sein, den Umsatz zu steigern, kann aber auch die Nutzerfreundlichkeit beeinträchtigen und die Klickraten senken. Nutzer sollten bei der Verwendung der App nicht so häufig unterbrochen werden, dass sie die Lust verlieren.
Zusätzliche Ressourcen
- HelloWorld-Beispiel: Eine minimale Implementierung aller Anzeigenformate.