Charger une seule annonce à l'ouverture d'une application

SDK avec API à chargement unique.

Les annonces à l'ouverture d'une application sont un format d'annonce spécial destiné aux éditeurs qui souhaitent monétiser les écrans de chargement de leur application. Elles peuvent être fermées à tout moment et sont conçues pour s'afficher lorsque vos utilisateurs mettent votre application au premier plan.

Pour en savoir plus, consultez les consignes concernant les annonces à l'ouverture d'une application.

Ce guide explique comment intégrer des annonces à l'ouverture d'une application dans une application Android.

Prérequis

Configurer GMA Next-Gen SDK.

Toujours tester avec des annonces tests

Lorsque vous créez et testez vos applications, assurez-vous d'utiliser des annonces tests plutôt que des annonces de production. Sinon, votre compte pourrait être suspendu.

Pour charger des annonces tests, utilisez l'ID de bloc d'annonces test dédié aux annonces à l'ouverture d'une application Android :

ca-app-pub-3940256099942544/9257395921

Cet ID de bloc d'annonces a été spécialement configuré pour renvoyer des annonces tests pour chaque requête. Vous pouvez l'utiliser librement dans vos propres applications lors du codage, des tests et du débogage. Veillez à le remplacer par votre propre ID de bloc d'annonces avant de publier votre application.

Pour en savoir plus sur les annonces tests GMA Next-Gen SDK, consultez Activer les annonces tests.

Charger une annonce

L'exemple suivant vous montre comment charger une seule annonce :

Kotlin

// Load ads after you initialize MobileAds.
AppOpenAd.load(
  AdRequest.Builder(adUnitId).build(),
  object : AdLoadCallback<AppOpenAd> {
    override fun onAdLoaded(ad: AppOpenAd) {
      // App open ad loaded.
      appOpenAd = ad
    }

    override fun onAdFailedToLoad(adError: LoadAdError) {
      // App open ad failed to load.
      Log.e(TAG, "App open ad failed to load: ${adError.message}")
      appOpenAd = null
    }
  },
)

Java

// Load ads after you initialize MobileAds.
AppOpenAd.load(
    new AdRequest.Builder(adUnitId).build(),
    new AdLoadCallback<AppOpenAd>() {
      @Override
      public void onAdLoaded(AppOpenAd ad) {
        // App open ad loaded.
        appOpenAd = ad;
      }

      @Override
      public void onAdFailedToLoad(LoadAdError adError) {
        // App open ad failed to load.
        Log.e(TAG, "App open ad failed to load: " + adError.getMessage());
        appOpenAd = null;
      }
    });

Lors des tests, utilisez l'ID de bloc d'annonces test : ca-app-pub-3940256099942544/9257395921.

Diffuser l'annonce

Pour diffuser une annonce à l'ouverture d'une application, utilisez la méthode show.

Kotlin

private fun showAd(appOpenAd: AppOpenAd, activity: Activity) {
  // Show the ad.
  appOpenAd.show(activity)
}

Java

private void showAd(AppOpenAd appOpenAd, Activity activity) {
  // Show the ad.
  appOpenAd.show(activity);
}

Écouter les événements d'annonce

Avant de diffuser l'annonce, écoutez les événements du cycle de vie de l'annonce :

Kotlin

private fun listenToAdEvents() {
  // Listen for ad events.
  val ad = appOpenAd
  if (ad == null) {
    Log.e(TAG, "App open ad is not ready yet.")
    return
  }

  ad.adEventCallback =
    object : AppOpenAdEventCallback {
      override fun onAdShowedFullScreenContent() {
        // App open ad did show.
      }

      override fun onAdDismissedFullScreenContent() {
        // App open ad did dismiss.
        appOpenAd = null
      }

      override fun onAdFailedToShowFullScreenContent(
        fullScreenContentError: FullScreenContentError
      ) {
        // App open ad failed to show.
        Log.e(TAG, "App open ad failed to show: ${fullScreenContentError.message}")
      }

      override fun onAdImpression() {
        // App open ad did record an impression.
      }

      override fun onAdClicked() {
        // App open ad did record a click.
      }
    }
}

Java

private void listenToAdEvents() {
  // Listen for ad events.
  if (appOpenAd == null) {
    Log.e(TAG, "App open ad is not ready yet.");
    return;
  }

  appOpenAd.setAdEventCallback(
      new AppOpenAdEventCallback() {
        @Override
        public void onAdShowedFullScreenContent() {
          // App open ad did show.
        }

        @Override
        public void onAdDismissedFullScreenContent() {
          // App open ad did dismiss.
          appOpenAd = null;
        }

        @Override
        public void onAdFailedToShowFullScreenContent(
            @NonNull FullScreenContentError fullScreenContentError) {
          // App open ad failed to show.
          Log.e(TAG, "App open ad failed to show: " + fullScreenContentError.getMessage());
        }

        @Override
        public void onAdImpression() {
          // App open ad did record an impression.
        }

        @Override
        public void onAdClicked() {
          // App open ad did record a click.
        }
      });
}

Démarrages à froid et écrans de chargement

Un démarrage à froid se produit lorsque votre application se lance à partir de zéro, par exemple lorsqu'un utilisateur ouvre votre application pour la première fois ou après un arrêt de la mémoire. Lors d'un démarrage à froid, vous ne disposez pas d'une annonce à l'ouverture d'une application précédemment chargée et prête à être diffusée immédiatement.

En raison des retards de demande d'annonce, les utilisateurs peuvent interagir avec votre application avant qu'une annonce à l'ouverture d'une application ne s'affiche. Pour éviter une mauvaise expérience utilisateur, n'affichez les annonces à l'ouverture d'une application lors des démarrages à froid que sur un écran de chargement pendant le chargement des éléments de l'application. Si le chargement des éléments est terminé et que l'utilisateur accède au contenu principal avant le chargement de l'annonce, ne l'affichez pas.

Chargez les éléments de l'application sur un thread en arrière-plan afin que le chargement se poursuive pendant l'affichage de l'annonce.

Bonnes pratiques

Suivez ces bonnes pratiques pour les annonces à l'ouverture d'une application :

  • N'affichez votre première annonce à l'ouverture d'une application qu'après qu'un utilisateur a ouvert votre application plusieurs fois.
  • N'affichez les annonces à l'ouverture d'une application que pendant que les utilisateurs attendent le chargement de votre application.
  • Si votre écran de chargement se termine pendant l'affichage de l'annonce, fermez-le dans la méthode de rappel de l'annonce ignorée.