Jetzt starten
Native Overlay-Anzeigen werden Nutzern über UI-Komponenten präsentiert, die nativ für die Plattform sind. Diese Anzeigen werden als Overlay über der Anwendung präsentiert. Das funktioniert ähnlich wie bei Banneranzeigen, aber mit der Möglichkeit, das Erscheinungsbild der Anzeigen anzupassen.
Native Overlay-Anzeigen unterstützen Vermittlung und Videoanzeigen. Das ist ein wichtiger Vorteil gegenüber nativen Anzeigen.
In diesem Leitfaden erfahren Sie, wie Sie native Overlay-Anzeigen in einer Unity-App implementieren und was Sie dabei beachten müssen.
Vorbereitung
Führen Sie die folgenden Schritte aus, bevor Sie fortfahren:
- Einrichten Google Mobile Ads Unity Plugin.
- Unity-Plug-in 9.0.0 oder höher installieren
Immer mit Testanzeigen testen
Der folgende Beispielcode enthält eine Anzeigenblock-ID, mit der Sie Testanzeigen anfordern können. Sie wurde speziell so konfiguriert, dass bei jeder Anfrage Testanzeigen anstelle von Produktionsanzeigen zurückgegeben werden. Daher ist die Verwendung sicher.
Nachdem Sie jedoch eine App in der Ad Manager-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.
/21775744923/example/native
Native Overlay-Anzeige laden
Das Laden einer nativen Overlay-Anzeige erfolgt über die statische Methode Load() in der Klasse NativeOverlayAd. Das geladene NativeOverlayAd-Objekt wird als Parameter im Abschluss-Handler bereitgestellt.
Im folgenden Code wird NativeOverlayAd verwendet, um eine Anzeige zu laden:
// This ad unit is configured to always serve test ads.
private string _adUnitId = "/21775744923/example/native";
private NativeOverlayAd _nativeOverlayAd;
/// <summary>
/// Loads the ad.
/// </summary>
public void LoadAd()
{
// Clean up the old ad before loading a new one.
if (_nativeOverlayAd != null)
{
DestroyAd();
}
Debug.Log("Loading native overlay ad.");
// Create a request used to load the ad.
var adRequest = new AdRequest();
// Optional: Define native ad options.
var options = new NativeAdOptions
{
AdChoicesPosition = AdChoicesPlacement.TopRightCorner,
MediaAspectRatio = NativeMediaAspectRatio.Any,
};
// Send the request to load the ad.
NativeOverlayAd.Load(_adUnitId, adRequest, options,
(NativeOverlayAd ad, LoadAdError error) =>
{
if (error != null)
{
Debug.LogError("Native Overlay ad failed to load an ad " +
" with error: " + error);
return;
}
// The ad should always be non-null if the error is null, but
// double-check to avoid a crash.
if (ad == null)
{
Debug.LogError("Unexpected error: Native Overlay ad load event " +
" fired with null ad and null error.");
return;
}
// The operation completed successfully.
Debug.Log("Native Overlay ad loaded with response : " +
ad.GetResponseInfo());
_nativeOverlayAd = ad;
// Register to ad events to extend functionality.
RegisterEventHandlers(ad);
});
}
Native Overlay-Anzeige rendern und gestalten
Native Overlay-Anzeigen werden mit einem NativeTemplateStyle gerendert. Diese Klasse definiert Felder, mit denen Sie das Erscheinungsbild der Anzeige anpassen können.
Die TemplateID ist ein erforderlicher String, der die native Vorlage definiert, die zum Rendern der nativen Overlay-Anzeige verwendet wird. Verwenden Sie die Konstante NativeTemplateID, um eine geeignete native Vorlage für Ihre Anzeige auszuwählen.
Im folgenden Code wird die native Overlay-Anzeige mit einer mittleren Vorlage und einem benutzerdefinierten Stil gerendert.
/// <summary>
/// Renders the ad.
/// </summary>
public void RenderAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Rendering Native Overlay ad.");
// Define a native template style with a custom style.
var style = new NativeTemplateStyle
{
TemplateID = NativeTemplateID.Medium,
MainBackgroundColor = Color.red,
CallToActionText = new NativeTemplateTextStyles
{
BackgroundColor = Color.green,
FontColor = Color.white,
FontSize = 9,
Style = NativeTemplateFontStyle.Bold
}
};
// Renders a native overlay ad at the default size
// and anchored to the bottom of the screne.
_nativeOverlayAd.RenderTemplate(style, AdPosition.Bottom);
}
}
Native Overlay-Anzeige ein- und ausblenden
Der folgende Code zeigt, wie Sie eine geladene native Overlay-Anzeige einblenden.
/// <summary>
/// Shows the ad.
/// </summary>
public void ShowAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Showing Native Overlay ad.");
_nativeOverlayAd.Show();
}
}
Native Overlay-Anzeige ausblenden
Der folgende Code zeigt, wie Sie eine native Overlay-Anzeige ausblenden.
/// <summary>
/// Hides the ad.
/// </summary>
public void HideAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Hiding Native Overlay ad.");
_nativeOverlayAd.Hide();
}
}
Native Overlay-Anzeige löschen
Wenn Sie die native Overlay-Anzeige nicht mehr verwenden, rufen Sie Destroy() auf, um Ressourcen freizugeben.
/// <summary>
/// Destroys the native overlay ad.
/// </summary>
public void DestroyAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Destroying native overlay ad.");
_nativeOverlayAd.Destroy();
_nativeOverlayAd = null;
}
}