Intersticial

Los anuncios intersticiales son anuncios de pantalla completa que cubren la interfaz de su app host. Por lo general, se muestran en puntos naturales de transición en el flujo de una app, como entre actividades o durante la pausa entre niveles de un juego. Cuando un La app muestra un anuncio intersticial, el usuario tiene la opción de presionarlo y continúa a su destino o ciérrala y regresa a la app.

En esta guía, se explica cómo integrar anuncios intersticiales en una app creada con Flutter.

Siempre realiza pruebas con anuncios de prueba

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

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

  • /21775744923/example/interstitial

Las unidades de anuncios de prueba están configuradas para mostrar anuncios de prueba para cada solicitud, y puedes usarlas en tus propias apps mientras codificas, pruebas y depuras. Solo asegúrate de reemplazarlos por tus propios IDs de unidad de anuncios antes de publicar tu app.

Carga un anuncio

En el siguiente ejemplo, se carga un anuncio intersticial:

class InterstitialExampleState extends State<InterstitialExample> {
  AdManagerInterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = '/21775744923/example/interstitial';

  /// Loads an interstitial ad.
  void loadAd() {
    AdManagerInterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdManagerAdRequest(),
        adLoadCallback: AdManagerInterstitialAdLoadCallback(
          // Called when an ad is successfully received.
          onAdLoaded: (ad) {
            debugPrint('$ad loaded.');
            // Keep a reference to the ad so you can show it later.
            _interstitialAd = ad;
          },
          // Called when an ad request failed.
          onAdFailedToLoad: (LoadAdError error) {
            debugPrint('AdManagerInterstitialAd failed to load: $error');
          },
        ));
  }
}

Eventos de anuncios intersticiales

Mediante el uso de FullScreenContentCallback, puedes escuchar el ciclo de vida eventos, como cuando se muestra o se descarta el anuncio. Establece AdManagerInterstitialAd.fullScreenContentCallback antes de mostrar el anuncio para recibir notificaciones de estos eventos. En este ejemplo, se implementa cada método:

class InterstitialExampleState extends State<InterstitialExample> {
  AdManagerInterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = '/21775744923/example/interstitial';

  /// Loads an interstitial ad.
  void loadAd() {
    AdManagerInterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdManagerAdRequest(),
        adLoadCallback: AdManagerInterstitialAdLoadCallback(
          // Called when an ad is successfully received.
          onAdLoaded: (ad) {
             ad.fullScreenContentCallback = FullScreenContentCallback(
                // Called when the ad showed the full screen content.
                onAdShowedFullScreenContent: (ad) {},
                // Called when an impression occurs on the ad.
                onAdImpression: (ad) {},
                // Called when the ad failed to show full screen content.
                onAdFailedToShowFullScreenContent: (ad, err) {
                  // Dispose the ad here to free resources.
                  ad.dispose();
                },
                // Called when the ad dismissed full screen content.
                onAdDismissedFullScreenContent: (ad) {
                  // Dispose the ad here to free resources.
                  ad.dispose();
                },
                // Called when a click is recorded for an ad.
                onAdClicked: (ad) {});

            debugPrint('$ad loaded.');
            // Keep a reference to the ad so you can show it later.
            _interstitialAd = ad;
          },
          // Called when an ad request failed.
          onAdFailedToLoad: (LoadAdError error) {
            debugPrint('AdManagerInterstitialAd failed to load: $error');
          },
        ));
  }
}

Muestra un anuncio intersticial

Un AdManagerInterstitialAd se muestra como un Overlay sobre todo el contenido de la app y se coloca de forma estática. Por lo tanto, no se puede agregar al árbol de widgets de Flutter. Para elegir cuándo mostrar el anuncio, llama a show().

_interstitiaAd.show();

Una vez que se llama a show(), no se puede descartar un Ad que se muestra de esta manera. de forma programática y requiere la entrada del usuario. Un AdManagerInterstitialAd solo se puede mostrar una vez. Las llamadas posteriores que se muestren activarán onAdFailedToShowFullScreenContent.

Un anuncio se debe eliminar cuando ya no se necesita acceder a él. La práctica recomendada de cuándo llamar a dispose() está en FullScreenContentCallback.onAdDismissedFullScreenContent y Devoluciones de llamada de FullScreenContentCallback.onAdFailedToShowFullScreenContent.

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

Próximos pasos