Rozpocznij
Reklamy nakładkowe natywne są wyświetlane użytkownikom za pomocą komponentów interfejsu, które są natywne dla platformy. Reklamy te są wyświetlane jako nakładka na aplikację. Działa to podobnie jak banery reklamowe, ale z możliwością dostosowania wyglądu reklam.
Natywne nakładki reklamowe obsługują zapośredniczenie i reklamy wideo. Jest to kluczowa zaleta reklam natywnych w formie nakładki.
Z tego przewodnika dowiesz się, jak wdrożyć w aplikacji Unity nakładkowe reklamy natywne, a także poznasz ważne kwestie, które warto wziąć pod uwagę.
Wymagania wstępne
- Zapoznaj się z przewodnikiem dla początkujących.
- Wtyczka Unity w wersji 9.0.0 lub nowszej.
Zawsze testuj za pomocą reklam testowych
Poniższy przykładowy kod zawiera identyfikator jednostki reklamowej, którego możesz użyć do wysyłania żądań reklam testowych. Został on specjalnie skonfigurowany tak, aby w przypadku każdego żądania zwracać reklamy testowe zamiast reklam produkcyjnych, dzięki czemu jest bezpieczny w użyciu.
Gdy jednak zarejestrujesz aplikację w interfejsie internetowym AdMob i utworzysz własne identyfikatory jednostek reklamowych do użycia w aplikacji, podczas tworzenia aplikacji skonfiguruj urządzenie jako urządzenie testowe.
Android
ca-app-pub-3940256099942544/2247696110
iOS
ca-app-pub-3940256099942544/3986624511
Wczytywanie nakładki reklamy natywnej
Reklamę nakładkową natywną wczytuje się za pomocą statycznej metody Load()
w klasie NativeOverlayAd
. Wczytany obiekt NativeOverlayAd
jest podawany jako parametr w module obsługi zakończenia.
Ten kod używa funkcji NativeOverlayAd
do wczytywania reklamy:
// These ad units are configured to always serve test ads.
#if UNITY_ANDROID
private string _adUnitId = "ca-app-pub-3940256099942544/2247696110";
#elif UNITY_IPHONE
private string _adUnitId = "ca-app-pub-3940256099942544/3986624511";
#else
private string _adUnitId = "unused";
#endif
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);
});
}
Renderowanie i określanie stylu nakładkowej reklamy natywnej
Reklamy nakładkowe natywne są renderowane za pomocą elementu NativeTemplateStyle
. Ta klasa
definiuje pola, które umożliwiają dostosowanie wyglądu reklamy.
TemplateID
to wymagany ciąg znaków, który określa szablon natywny używany do renderowania nakładkowej reklamy natywnej. Użyj stałej NativeTemplateID
, aby wybrać odpowiedni szablon reklamy natywnej.
Poniższy kod renderuje nakładkę reklamy natywnej ze średnim szablonem i stylem niestandardowym.
/// <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);
}
}
Wyświetlanie i ukrywanie nakładki reklamowej
Poniższy kod pokazuje, jak wyświetlić wczytaną nakładkę natywną.
/// <summary>
/// Shows the ad.
/// </summary>
public void ShowAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Showing Native Overlay ad.");
_nativeOverlayAd.Show();
}
}
Ukrywanie nakładki reklamy natywnej
Poniższy kod pokazuje, jak ukryć nakładkową reklamę natywną.
/// <summary>
/// Hides the ad.
/// </summary>
public void HideAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Hiding Native Overlay ad.");
_nativeOverlayAd.Hide();
}
}
Usuwanie nakładki reklamy natywnej
Po zakończeniu korzystania z reklamy nakładkowej natywnej wywołaj funkcję Destroy()
, aby zwolnić zasoby.
/// <summary>
/// Destroys the native overlay ad.
/// </summary>
public void DestroyAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Destroying native overlay ad.");
_nativeOverlayAd.Destroy();
_nativeOverlayAd = null;
}
}
Następne kroki
- Więcej informacji o reklamach natywnych znajdziesz w naszym przewodniku po reklamach natywnych.
- Zapoznaj się z zasadami i wytycznymi dotyczącymi reklam natywnych.