Anuncios intersticiales

Los anuncios intersticiales son anuncios de pantalla completa que cubren la interfaz de la aplicación que la aloja. Normalmente, se muestran en puntos de transición naturales en el flujo de una aplicación, como entre actividades o durante la pausa entre niveles de un juego. Cuando una app muestra un anuncio intersticial, el usuario tiene la opción de presionar el anuncio y continuar hasta su destino o cerrarlo y regresar a la aplicación. Lee uno de nuestros casos de éxito.

En esta guía, se explica cómo integrar anuncios intersticiales en una aplicación de Android .

Requisitos previos

  • SDK de anuncios de Google para dispositivos móviles versión 19.7.0 o posterior.
  • Completa la Guía de introducción.

Probar siempre con anuncios de prueba

Cuando compiles y pruebes tus apps, asegúrate de usar anuncios de prueba en lugar de anuncios activos y en producción. De lo contrario, podría suspenderse tu cuenta.

La forma más sencilla de cargar anuncios de prueba es usar nuestro ID exclusivo de unidad de anuncios de prueba para Anuncios intersticiales para Android:

ca-app-pub-3940256099942544/1033173712

Se configuró de forma especial para mostrar anuncios de prueba para cada solicitud, y ahora usarla en tus propias apps mientras codificas, pruebas y depuras. Solo haz asegúrate de reemplazarla con tu propio ID de unidad de anuncios antes de publicar tu app.

Para obtener más información sobre cómo funcionan los anuncios de prueba del SDK de anuncios para dispositivos móviles, consulta Anuncios de Prueba.

Carga un anuncio

Para cargar un anuncio intersticial, llama al InterstitialAd. estático load() y pasa un InterstitialAdLoadCallback para recibir el archivo el anuncio o los posibles errores. Ten en cuenta que, al igual que otras devoluciones de llamada de carga de formato, InterstitialAdLoadCallback de adelantos LoadAdError para proporcionar detalles del error de mayor fidelidad.

Java

import com.google.android.gms.ads.interstitial.InterstitialAd;
import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback;

public class MainActivity extends Activity {

  private InterstitialAd mInterstitialAd;
  private static final String TAG = "MainActivity";

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    AdRequest adRequest = new AdRequest.Builder().build();

    InterstitialAd.load(this,"ca-app-pub-3940256099942544/1033173712", adRequest,
        new InterstitialAdLoadCallback() {
      @Override
      public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
        // The mInterstitialAd reference will be null until
        // an ad is loaded.
        mInterstitialAd = interstitialAd;
        Log.i(TAG, "onAdLoaded");
      }

      @Override
      public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
        // Handle the error
        Log.d(TAG, loadAdError.toString());
        mInterstitialAd = null;
      }
    });
  }
}

Kotlin

import com.google.android.gms.ads.interstitial.InterstitialAd;
import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback;

class MainActivity : AppCompatActivity() {

  private var mInterstitialAd: InterstitialAd? = null
  private final val TAG = "MainActivity"

    override fun onCreate(savedInstanceState: Bundle?) {
      super.onCreate(savedInstanceState)
      setContentView(R.layout.activity_main)

      var adRequest = AdRequest.Builder().build()

      InterstitialAd.load(this,"ca-app-pub-3940256099942544/1033173712", adRequest, object : InterstitialAdLoadCallback() {
        override fun onAdFailedToLoad(adError: LoadAdError) {
          Log.d(TAG, adError?.toString())
          mInterstitialAd = null
        }

        override fun onAdLoaded(interstitialAd: InterstitialAd) {
          Log.d(TAG, 'Ad was loaded.')
          mInterstitialAd = interstitialAd
        }
      })
    }
}

Cómo configurar FullScreenContentCallback

FullScreenContentCallback controla los eventos relacionados con la visualización de tus InterstitialAd Antes de mostrar InterstitialAd, asegúrate de establecer la devolución de llamada:

Java

mInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback(){
  @Override
  public void onAdClicked() {
    // Called when a click is recorded for an ad.
    Log.d(TAG, "Ad was clicked.");
  }

  @Override
  public void onAdDismissedFullScreenContent() {
    // Called when ad is dismissed.
    // Set the ad reference to null so you don't show the ad a second time.
    Log.d(TAG, "Ad dismissed fullscreen content.");
    mInterstitialAd = null;
  }

  @Override
  public void onAdFailedToShowFullScreenContent(AdError adError) {
    // Called when ad fails to show.
    Log.e(TAG, "Ad failed to show fullscreen content.");
    mInterstitialAd = null;
  }

  @Override
  public void onAdImpression() {
    // Called when an impression is recorded for an ad.
    Log.d(TAG, "Ad recorded an impression.");
  }

  @Override
  public void onAdShowedFullScreenContent() {
    // Called when ad is shown.
    Log.d(TAG, "Ad showed fullscreen content.");
  }
});

Kotlin

mInterstitialAd?.fullScreenContentCallback = object: FullScreenContentCallback() {
  override fun onAdClicked() {
    // Called when a click is recorded for an ad.
    Log.d(TAG, "Ad was clicked.")
  }

  override fun onAdDismissedFullScreenContent() {
    // Called when ad is dismissed.
    Log.d(TAG, "Ad dismissed fullscreen content.")
    mInterstitialAd = null
  }

  override fun onAdFailedToShowFullScreenContent(adError: AdError?) {
    // Called when ad fails to show.
    Log.e(TAG, "Ad failed to show fullscreen content.")
    mInterstitialAd = null
  }

  override fun onAdImpression() {
    // Called when an impression is recorded for an ad.
    Log.d(TAG, "Ad recorded an impression.")
  }

  override fun onAdShowedFullScreenContent() {
    // Called when ad is shown.
    Log.d(TAG, "Ad showed fullscreen content.")
  }
}

Muestra el anuncio

Los anuncios intersticiales deben mostrarse durante pausas naturales en el flujo de una aplicación. Entre los niveles de un juego, esto es un buen ejemplo, o después de que el usuario completa una tarea. Para mostrar un anuncio intersticial, usa la show().

Java

if (mInterstitialAd != null) {
  mInterstitialAd.show(MyActivity.this);
} else {
  Log.d("TAG", "The interstitial ad wasn't ready yet.");
}

Kotlin

if (mInterstitialAd != null) {
  mInterstitialAd?.show(this)
} else {
  Log.d("TAG", "The interstitial ad wasn't ready yet.")
}

Prácticas recomendadas

Determina si los anuncios intersticiales son el tipo de anuncio adecuado para tu app.
Los anuncios intersticiales funcionan mejor en apps con puntos de transición naturales. Conclusión de una tarea dentro de una aplicación, como compartir una imagen o completar una nivel del juego, crea un punto así. Asegúrate de considerar en qué puntos de tu en el flujo de trabajo de tu app, mostrarás anuncios intersticiales y cómo es probable que el usuario responder.
Recuerda pausar la acción cuando muestres un anuncio intersticial.
Existen varios tipos de anuncios intersticiales: de texto, con imágenes, video y mucho más. Es importante que te asegures de que cuando tu app muestre una anuncio intersticial, también suspende su uso de algunos recursos para permitir que el anuncio los aproveche. Por ejemplo, cuando realizas la llamada para mostrar un anuncio intersticial, asegúrese de pausar las salidas de audio que produce su aplicación.
Proporciona un tiempo de carga adecuado.
Así como es importante asegurarse de mostrar anuncios intersticiales en una en el momento adecuado, también es importante que el usuario no tenga que esperar a que se carguen. Llamando para cargar el anuncio con anticipación load() antes de que decidas llamar show() puede garantizar que tu app tenga un anuncio intersticial completamente cargado en la listo cuando llegue el momento de mostrar uno.
No sobrecargues al usuario con anuncios.
Aunque aumentar la frecuencia de los anuncios intersticiales en tu app podría parecer como una excelente manera de aumentar los ingresos, también puede perjudicar la experiencia del usuario y disminuir las tasas de clics. Asegúrate de que los usuarios no tengan tanta frecuencia que ya no puedan disfrutar del uso de la app.

Código fuente

Ejemplos en GitHub

  • Ejemplo de anuncios intersticiales: Java | Kotlin

Historias de éxito

Pasos siguientes