Banneransichten sind rechteckige Bild- oder Textanzeigen, die einen bestimmten Punkt 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 neu in der mobilen Werbung sind, sind diese ein guter Ausgangspunkt. Fallstudie.
In diesem Leitfaden erfahren Sie, wie Sie Banneransichten in eine Unity-App einbinden. Zusätzlich zu Code-Snippets und Anleitungen finden Sie hier Informationen zur richtigen Größe von Bannern und Links zu weiteren Ressourcen.
Voraussetzungen
- Arbeiten Sie den Startleitfaden durch.
Immer mit Testanzeigen testen
Der folgende Beispielcode enthält eine Anzeigenblock-ID, mit der Sie Testanzeigen anfordern können. Da es speziell so konfiguriert wurde, dass bei jeder Anfrage Testanzeigen zurückgegeben werden, kann es sicher verwendet werden.
Nachdem du jedoch eine App auf der AdMob-Weboberfläche registriert und eigene Anzeigenblock-IDs zur Verwendung in deiner App erstellt hast, konfiguriere dein Gerät während der Entwicklung explizit als Testgerät.
Android
ca-app-pub-3940256099942544/6300978111
iOS
ca-app-pub-3940256099942544/2934735716
Mobile Ads SDK initialisieren
Bitten Sie Ihre App, das Mobile Ads SDK zu initialisieren, bevor Anzeigen geladen werden. Rufen Sie dazu MobileAds.Initialize()
auf. Dieser Vorgang muss nur einmal durchgeführt werden, idealerweise beim Start 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, bevor Sie Anzeigen laden. So wird sichergestellt, dass alle Vermittlungsadapter initialisiert werden.
BannerView-Beispiel
Der Beispielcode unten veranschaulicht die Verwendung der Banneransicht. In diesem 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 Lebenszyklusereignissen.
Banneransicht erstellen
Der erste Schritt bei der Verwendung einer Banneransicht besteht darin, eine Instanz der 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 Anzeigen mit derBannerView
geladen werden sollen.AdSize
: Die gewünschte Anzeigengröße. Weitere Informationen finden Sie unter Bannergrößen.AdPosition
: Die Position, an der die Banneransichten platziert werden sollen. In der AufzählungAdPosition
sind die gültigen Werte für die Anzeigenposition aufgeführt.
Beachten Sie, wie je nach Plattform unterschiedliche Anzeigenblöcke verwendet werden. Sie benötigen einen iOS-Anzeigenblock für Anzeigenanfragen unter iOS und einen Android-Anzeigenblock für Anfragen unter Android.
Optional: Banneransicht mit benutzerdefinierter Position erstellen
Wenn Sie besser steuern möchten, wo eine BannerView
auf dem Bildschirm platziert wird als mit AdPosition
-Werten, 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 des BannerView
befindet sich an den x- und y-Werten, die an den Konstruktor übergeben werden. Der Ursprung ist dabei die linke obere Ecke des Bildschirms.
Optional: Banneransicht mit benutzerdefinierter Größe erstellen
Neben der Verwendung einer AdSize
-Konstante können Sie auch eine benutzerdefinierte Größe für Ihre Anzeige festlegen:
// 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
Wenn Sie eine Anzeige laden möchten, erstellen Sie eine AdRequest
und übergeben Sie sie 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 Banneraufrufereignisse warten
Um das Verhalten Ihrer Anzeige anzupassen, können Sie verschiedene Ereignisse im Lebenszyklus der Anzeige einbinden, z. B. das Laden, Öffnen oder Schließen. Registrieren Sie einen Bevollmächtigten, um auf diese Ereignisse zu warten:
/// <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 entfernen
Wenn Sie mit der Banneransicht fertig sind, rufen Sie Destroy()
auf, um Ressourcen freizugeben.
/// <summary>
/// Destroys the banner view.
/// </summary>
public void DestroyBannerView()
{
if (_bannerView != null)
{
Debug.Log("Destroying banner view.");
_bannerView.Destroy();
_bannerView = null;
}
}
Fertig! In Ihrer App können jetzt Banneranzeigen ausgeliefert werden.
Bannergrößen
In der folgenden Tabelle sind die Standard-Bannergrößen aufgeführt.
Größe in dp (B x H) | 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 × 60 | IAB-Full-Size-Banner | Tablets | FULL_BANNER |
728 x 90 | IAB-Leaderboard | Tablets | LEADERBOARD |
Angegebene Breite × Adaptive Höhe | Adaptives Banner | Smartphones und Tablets | – |
Bildschirmbreite x 32|50|90 | Smart-Banner | Smartphones und Tablets | SMART_BANNER |
Weitere Informationen zu adaptiven Bannern, die Smart-Banner ersetzen sollen |
Zusätzliche Ressourcen
- Beispiel für HelloWorld: Eine minimale Implementierung aller Anzeigenformate.