Natywne nakładki reklamowe

Rozpocznij

Natywne nakładki reklamowe wyświetlają się użytkownikom w natywnych komponentach interfejsu związanych z platformą. Reklamy te wyświetlają się w formie nakładki na aplikacji. Funkcja ta działa podobnie do banerów reklamowych, dostosować wygląd reklam.

Natywne nakładki reklamowe obsługują zapośredniczenie i reklamy wideo. To kluczowa zaleta natywne nakładki reklamowe mają więcej niż reklamy natywne.

Z tego przewodnika dowiesz się, jak wdrożyć natywne nakładki reklamowe w aplikacji Unity wartą uwagi.

Wymagania wstępne

Zawsze korzystaj z reklam testowych

Ten przykładowy kod zawiera identyfikator jednostki reklamowej, którego możesz użyć do przesłania żądania reklam testowych. Został on skonfigurowany tak, aby wyświetlać reklamy testowe, a nie aby tworzyć bezpieczne reklamy dla każdego żądania.

Jeśli jednak zarejestrujesz aplikację w interfejsu internetowego AdMob i utworzenie własnej jednostki reklamowej. Identyfikatory do wykorzystania w aplikacji; jawnie skonfiguruj urządzenie jako testowe urządzenia w trakcie w Google Cloud.

Android

ca-app-pub-3940256099942544/2247696110

iOS

ca-app-pub-3940256099942544/3986624511

Wczytaj natywną nakładkę reklamową

Wczytywanie natywnej nakładki reklamowej odbywa się przy użyciu metody statycznej Load() klasy NativeOverlayAd. Wczytany obiekt NativeOverlayAd jest przesyłany jako w module obsługi uzupełniania.

Ten kod do wczytywania reklamy używa parametru NativeOverlayAd:



  // 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 natywnej nakładki reklamowej

Natywne nakładki reklamowe są renderowane za pomocą interfejsu NativeTemplateStyle. Te zajęcia 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 wyrenderować natywną nakładkę reklamową. Użyj stałej NativeTemplateID, aby wybrać odpowiedni szablon natywny do reklamy.

Ten kod renderuje natywną nakładkę reklamową z użyciem średniego szablonu i szablonu stylu niestandardowego.

/// <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 natywnej nakładki reklamowej

Ten kod ilustruje sposób wyświetlania wczytanej natywnej nakładki reklamowej.

/// <summary>
/// Shows the ad.
/// </summary>
public void ShowAd()
{
    if (_nativeOverlayAd != null)
    {
        Debug.Log("Showing Native Overlay ad.");
        _nativeOverlayAd.Show();
    }
}

Ukryj natywną nakładkę reklamową

Ten kod pokazuje, jak ukryć natywną nakładkę reklamową.

/// <summary>
/// Hides the ad.
/// </summary>
public void HideAd()
{
    if (_nativeOverlayAd != null)
    {
        Debug.Log("Hiding Native Overlay ad.");
        _nativeOverlayAd.Hide();
    }
}

Zniszcz natywną nakładkę reklamową

Gdy skończysz korzystać z natywnej nakładki reklamowej, wywołaj Destroy() w celu i uwolnij zasoby.

/// <summary>
/// Destroys the native overlay ad.
/// </summary>
public void DestroyAd()
{
    if (_nativeOverlayAd != null)
    {
        Debug.Log("Destroying native overlay ad.");
        _nativeOverlayAd.Destroy();
        _nativeOverlayAd = null;
    }
}

Dalsze kroki