Banneranzeigen

Plattform auswählen:Android iOS Unity Flutter

Banneransichten sind rechteckige Bild- oder Textanzeigen, die einen bestimmten Platz auf dem Bildschirm einnehmen. Sie bleiben auf dem Bildschirm, während Nutzer mit der App interagieren, und können nach einer bestimmten Zeit automatisch aktualisiert werden. Wenn Sie noch keine Erfahrung mit mobiler Werbung haben, sind sie ein guter Ausgangspunkt. Fallstudie

In diesem Leitfaden erfahren Sie, wie Sie Banneransichten in eine Unity-App einbinden. Neben Code-Snippets und Anleitungen finden Sie auch Informationen zur richtigen Größe von Bannern und Links zu zusätzlichen Ressourcen.

Vorbereitung

Immer Testanzeigen verwenden

Der folgende Beispielcode enthält eine Anzeigenblock-ID, mit der Sie Testanzeigen anfordern können. Sie wurde speziell dafür konfiguriert, für jede Anfrage Testanzeigen anstelle von Produktionsanzeigen zurückzugeben.

Nachdem Sie eine App in der AdMob-Weboberfläche registriert und eigene Anzeigenblock-IDs für die Verwendung in Ihrer App erstellt haben, sollten Sie Ihr Gerät während der Entwicklung jedoch explizit als Testgerät konfigurieren.

Android

ca-app-pub-3940256099942544/6300978111

iOS

ca-app-pub-3940256099942544/2934735716

Mobile Ads SDK initialisieren

Bevor Anzeigen geladen werden, muss Ihre App das Mobile Ads SDK initialisieren. Rufen Sie dazu MobileAds.Initialize() auf. Dies muss nur einmal erfolgen, idealerweise beim Starten der App.

using GoogleMobileAds;
using GoogleMobileAds.Api;

public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // Initialize the Google Mobile Ads SDK.
        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 werden.

Beispiel für BannerView

Im folgenden Beispielcode wird beschrieben, wie die Banneransicht verwendet wird. Im Beispiel erstellen Sie eine Instanz einer Banneransicht, verwenden ein AdRequest, um eine Anzeige in die Banneransicht zu laden, und erweitern dann die Funktionen durch die Verarbeitung von Lifecycle-Ereignissen.

Banneransicht erstellen

Der erste Schritt bei der Verwendung einer Banneransicht besteht darin, eine Instanz einer Banneransicht in einem C#-Skript zu erstellen, das an ein GameObject angehängt ist.


  // These ad units are configured to always serve test ads.
#if UNITY_ANDROID
  private string _adUnitId = "ca-app-pub-3940256099942544/6300978111";
#elif UNITY_IPHONE
  private string _adUnitId = "ca-app-pub-3940256099942544/2934735716";
#else
  private string _adUnitId = "unused";
#endif

  BannerView _bannerView;

  /// <summary>
  /// Creates a 320x50 banner view at top of the screen.
  /// </summary>
  public void CreateBannerView()
  {
      Debug.Log("Creating banner view");

      // If we already have a banner, destroy the old one.
      if (_bannerView != null)
      {
          DestroyAd();
      }

      // Create a 320x50 banner at top of the screen
      _bannerView = new BannerView(_adUnitId, AdSize.Banner, AdPosition.Top);
  }

Der Konstruktor für ein BannerView hat die folgenden Parameter:

  • adUnitId: Die Anzeigenblock-ID, über die die Anzeigen für BannerView geladen werden sollen.
  • AdSize: Die Anzeigengröße, die Sie verwenden möchten. Weitere Informationen finden Sie unter Bannergrößen.
  • AdPosition: Die Position, an der die Banner-Views platziert werden sollen. Das Enum AdPosition enthält die gültigen Werte für die Anzeigenposition.

Beachten Sie, wie verschiedene Anzeigenblöcke je nach Plattform verwendet werden. Sie müssen einen iOS-Anzeigenblock für Anzeigenanfragen unter iOS und einen Android-Anzeigenblock für Anfragen unter Android verwenden.

Optional: Banneransicht mit benutzerdefinierter Position erstellen

Wenn Sie genauer steuern möchten, wo ein BannerView auf dem Bildschirm platziert wird, als es mit AdPosition-Werten möglich ist, verwenden Sie den Konstruktor mit x- und y-Koordinaten als Parameter:

// Create a 320x50 banner views at coordinate (0,50) on screen.
_bannerView = new BannerView(_adUnitId, AdSize.Banner, 0, 50);

Die obere linke Ecke von BannerView wird an den x- und y-Werten positioniert, die an den Konstruktor übergeben werden. Der Ursprung befindet sich oben links auf dem Bildschirm.

Optional: Banneransicht mit benutzerdefinierter Größe erstellen

Neben der Verwendung einer AdSize-Konstanten können Sie auch eine benutzerdefinierte Größe für Ihre Anzeige angeben:

// Use the AdSize argument to set a custom size for the ad.
AdSize adSize = new AdSize(250, 250);
_bannerView = new BannerView(_adUnitId, adSize, AdPosition.Bottom);

Banneranzeige laden

Erstellen Sie zum Laden einer Anzeige ein AdRequest-Objekt und übergeben Sie es an die Methode LoadAd().

/// <summary>
/// Creates the banner view and loads a banner ad.
/// </summary>
public void LoadAd()
{
    // create an instance of a banner view first.
    if(_bannerView == null)
    {
        CreateBannerView();
    }

    // create our request used to load the ad.
    var adRequest = new AdRequest();

    // send the request to load the ad.
    Debug.Log("Loading banner ad.");
    _bannerView.LoadAd(adRequest);
}

Auf Banneraufrufe warten

Um das Verhalten Ihrer Anzeige anzupassen, können Sie eine Reihe von Ereignissen im Lebenszyklus der Anzeige nutzen, z. B. Laden, Öffnen oder Schließen. Um auf diese Ereignisse zu reagieren, registrieren Sie einen Delegaten:

/// <summary>
/// listen to events the banner view may raise.
/// </summary>
private void ListenToAdEvents()
{
    // Raised when an ad is loaded into the banner view.
    _bannerView.OnBannerAdLoaded += () =>
    {
        Debug.Log("Banner view loaded an ad with response : "
            + _bannerView.GetResponseInfo());
    };
    // Raised when an ad fails to load into the banner view.
    _bannerView.OnBannerAdLoadFailed += (LoadAdError error) =>
    {
        Debug.LogError("Banner view failed to load an ad with error : "
            + error);
    };
    // Raised when the ad is estimated to have earned money.
    _bannerView.OnAdPaid += (AdValue adValue) =>
    {
        Debug.Log(String.Format("Banner view paid {0} {1}.",
            adValue.Value,
            adValue.CurrencyCode));
    };
    // Raised when an impression is recorded for an ad.
    _bannerView.OnAdImpressionRecorded += () =>
    {
        Debug.Log("Banner view recorded an impression.");
    };
    // Raised when a click is recorded for an ad.
    _bannerView.OnAdClicked += () =>
    {
        Debug.Log("Banner view was clicked.");
    };
    // Raised when an ad opened full screen content.
    _bannerView.OnAdFullScreenContentOpened += () =>
    {
        Debug.Log("Banner view full screen content opened.");
    };
    // Raised when the ad closed full screen content.
    _bannerView.OnAdFullScreenContentClosed += () =>
    {
        Debug.Log("Banner view full screen content closed.");
    };
}

Banneransicht zerstören

Wenn Sie die Banneransicht nicht mehr verwenden, rufen Sie Destroy() auf, um Ressourcen freizugeben.

/// <summary>
/// Destroys the banner view.
/// </summary>
public void DestroyAd()
{
    if (_bannerView != null)
    {
        Debug.Log("Destroying banner view.");
        _bannerView.Destroy();
        _bannerView = null;
    }
}

Geschafft! In Ihrer App können jetzt Banneranzeigen ausgeliefert werden.

Anzeige aktualisieren

Wenn Sie Ihren Anzeigenblock für die Aktualisierung konfiguriert haben, müssen Sie keine weitere Anzeige anfordern, wenn die Anzeige nicht geladen wird. Das Google Mobile Ads SDK berücksichtigt jede Aktualisierungsrate, die Sie in der AdMob-Benutzeroberfläche angegeben haben. Wenn Sie die Aktualisierung nicht aktiviert haben, stellen Sie eine neue Anfrage. Weitere Informationen zur Aktualisierung von Anzeigenblöcken, z. B. zum Festlegen einer Aktualisierungsrate, finden Sie unter Automatische Aktualisierung für Banneranzeigen verwenden.

In der folgenden Tabelle sind die Standardbannergrößen aufgeführt.

Größe in dp (Breite × Höhe) Beschreibung Verfügbarkeit AdSize-Konstante
320 x 50 Normale Banner- Smartphones und Tablets BANNER
320 × 100 Großes Banner Smartphones und Tablets LARGE_BANNER
300 x 250 IAB Medium Rectangle Smartphones und Tablets MEDIUM_RECTANGLE
468 x 60 IAB-Banner in voller Größe Tablets FULL_BANNER
728 x 90 IAB-Leaderboard Tablets LEADERBOARD
Angegebene Breite × Adaptive Höhe Adaptives Banner Smartphones und Tablets
Bildschirmbreite × 32|50|90 Smart-Banner Smartphones und Tablets SMART_BANNER
Weitere Informationen zu adaptiven Bannern, die Smart-Banner ersetzen sollen
Wenn eine Android-App versucht, ein Banner zu laden, das zu groß für das Layout ist, wird es vom SDK nicht angezeigt. Stattdessen wird eine Fehlermeldung protokolliert.

Zusätzliche Ressourcen