Anuncios en forma de banner

Selecciona la plataforma: Android iOS Unity Flutter

Las vistas de banner son anuncios rectangulares con imágenes o texto que ocupan un espacio en la pantalla. Permanecen en la pantalla mientras los usuarios interactúan con la app y se pueden actualizar automáticamente después de un período determinado. Si es la primera vez que usas la publicidad para dispositivos móviles, este formato es una gran alternativa para comenzar. Caso de éxito.

En esta guía, se muestra cómo integrar vistas de banner en una app de Unity. Además de fragmentos de código e instrucciones, también incluye información para dimensionar los banners correctamente y vínculos a recursos adicionales.

Requisitos previos

Realiza siempre pruebas con anuncios de prueba

El siguiente código de ejemplo contiene un ID de unidad de anuncios que puedes usar para solicitar anuncios de prueba. Se configuró especialmente para devolver anuncios de prueba en lugar de anuncios de producción para cada solicitud, lo que hace que sea seguro de usar.

Sin embargo, después de registrar una app en la interfaz web de AdMob y crear tus propios IDs de unidad de anuncios para usarlos en tu app, configura tu dispositivo de forma explícita como un dispositivo de prueba durante el desarrollo.

Android

ca-app-pub-3940256099942544/6300978111

iOS

ca-app-pub-3940256099942544/2934735716

Inicializa el SDK de Mobile Ads

Antes de cargar anuncios, haz que tu app inicialice el SDK de anuncios para dispositivos móviles llamando a MobileAds.Initialize(). Esto solo se debe hacer una vez, idealmente cuando se inicia la 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.
        });
    }
}

Si usas la mediación, espera a que se produzca la devolución de llamada antes de cargar anuncios, ya que esto garantizará que se inicialicen todos los adaptadores de mediación.

Ejemplo de BannerView

En el siguiente código de ejemplo, se detalla cómo usar la vista de banner. En el ejemplo, crearás una instancia de una vista de banner, usarás un AdRequest para cargar un anuncio en la vista de banner y, luego, extenderás sus capacidades controlando los eventos del ciclo de vida.

Crea una vista de banner

El primer paso para usar una vista de banner es crear una instancia de una vista de banner en una secuencia de comandos de C# adjunta a un GameObject.


  // 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);
  }

El constructor de un BannerView tiene los siguientes parámetros:

  • adUnitId: Es el ID de la unidad de anuncios desde la que BannerView debe cargar anuncios.
  • AdSize: Es el tamaño del anuncio que deseas usar. Consulta Tamaños de banners para obtener más información.
  • AdPosition: Es la posición en la que se deben colocar las vistas del banner. La enumeración AdPosition enumera los valores válidos de la posición del anuncio.

Observa cómo se usan los diferentes bloques de anuncios según la plataforma. Debes usar una unidad de anuncios para iOS para realizar solicitudes de anuncios en iOS y una unidad de anuncios para Android para realizar solicitudes en Android.

(Opcional) Crea una vista de banner con una posición personalizada

Para tener un mayor control sobre dónde se coloca un BannerView en la pantalla que el que ofrecen los valores de AdPosition, usa el constructor que tiene coordenadas X e Y como parámetros:

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

La esquina superior izquierda de BannerView se posiciona en los valores de X e Y que se pasan al constructor, donde el origen es la esquina superior izquierda de la pantalla.

(Opcional) Crea una vista de banner con un tamaño personalizado

Además de usar una constante de AdSize, también puedes especificar un tamaño personalizado para tu anuncio:

// 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);

Carga un anuncio de banner

Para cargar un anuncio, crea un objeto AdRequest y pásalo al método 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);
}

Cómo detectar eventos de vistas de banners

Para personalizar el comportamiento de tu anuncio, puedes conectarte a varios eventos en el ciclo de vida del anuncio, como la carga, la apertura o el cierre. Para detectar estos eventos, registra un delegado:

/// <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.");
    };
}

Destruye la vista de banner

Cuando termines de usar la vista del banner, asegúrate de llamar a Destroy() para liberar los recursos.

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

Eso es todo. Tu app ahora está lista para mostrar anuncios de banner.

Actualiza un anuncio

Si configuraste tu unidad de anuncios para que se actualice, no es necesario que solicites otro anuncio cuando no se cargue. El SDK de anuncios de Google para dispositivos móviles respeta cualquier frecuencia de actualización que hayas especificado en la IU de AdMob. Si no habilitaste la actualización, envía una nueva solicitud. Para obtener más detalles sobre la actualización de bloques de anuncios, como la configuración de una frecuencia de actualización, consulta Cómo usar la actualización automática para los anuncios de banner.

En la siguiente tabla, se enumeran los tamaños de banner estándar.

Tamaño en dp (ancho x alto) Descripción Disponibilidad Constante AdSize
320 x 50 Banner estándar Teléfonos y tablets BANNER
320 x 100 Banner grande Teléfonos y tablets LARGE_BANNER
300 x 250 Rectángulo mediano del IAB Teléfonos y tablets MEDIUM_RECTANGLE
468 x 60 Banner de tamaño completo de IAB Tablets FULL_BANNER
728 x 90 Tabla de clasificación de IAB Tablets LEADERBOARD
Ancho proporcionado x Altura adaptable Banner adaptable Teléfonos y tablets N/A
Ancho de pantalla x 32|50|90 Banner inteligente Teléfonos y tablets SMART_BANNER
Obtén más información sobre los banners adaptables, que están diseñados para reemplazar los banners inteligentes.

Recursos adicionales