Préchargement des annonces (bêta)

Sélectionnez une plate-forme : Android iOS Unity Android (Legacy)

Le préchargement des annonces est une fonctionnalité de chargement des annonces gérée par Google dans Google Mobile Ads Unity Plugin qui gère le chargement et la mise en cache des annonces à votre place. Le préchargement des annonces nécessite de modifier la façon dont vous gérez le chargement des annonces. Pour optimiser les performances à l'aide du préchargement des annonces, désactivez la mise en cache personnalisée et déléguez cette responsabilité à Google Mobile Ads Unity Plugin.

Le préchargement des annonces offre les avantages suivants par rapport au chargement manuel des annonces :

  • Gestion des références : conserve les annonces chargées afin que vous n'ayez pas à gérer les références tant que vous n'êtes pas prêt à les diffuser.
  • Rechargement automatique : charge automatiquement une nouvelle annonce lorsque vous en retirez une du cache.
  • Nouvelles tentatives gérées : relance automatiquement les requêtes ayant échoué à l'aide d'un intervalle exponentiel entre les tentatives.
  • Gestion de l'expiration : actualise automatiquement les annonces avant leur expiration (généralement après une heure).
  • Optimisation du cache : si vous utilisez une taille de cache supérieure à un, Google Mobile Ads Unity Plugin optimise l'ordre du cache pour diffuser la meilleure annonce.

Ce guide explique comment configurer les annonces de préchargement, vérifier leur disponibilité et les diffuser.

Prérequis

Avant de suivre ce tutoriel, vous devez configurer Google Mobile Ads Unity Plugin.

Commencer à précharger des annonces

Lorsque l'application démarre, appelez la méthode Preload une seule fois. Une fois que vous avez appelé la méthode Preload, Google Mobile Ads Unity Plugin précharge automatiquement les annonces et relance les requêtes ayant échoué pour les configurations préchargées.

L'exemple suivant commence à précharger des annonces :

var preloadConfiguration = new PreloadConfiguration
{
    AdUnitId = "AD_UNIT_ID",
    Request = new AdRequest(),
};

// Start the preloading initialization process after MobileAds.Initialize().
InterstitialAdPreloader.Preload(
    // The Preload ID can be any unique string to identify this configuration.
    "AD_UNIT_ID",
    preloadConfiguration);

Obtenir et diffuser l'annonce préchargée

Lorsque vous utilisez le préchargement des annonces, Google Mobile Ads Unity Plugin conserve les annonces mises en cache. Lorsque vous souhaitez diffuser une annonce, appelez DequeueAd. Google Mobile Ads Unity Plugin récupère l'annonce disponible et précharge automatiquement l'annonce suivante en arrière-plan.

Évitez d'appeler la méthode DequeueAd tant que vous n'êtes pas prêt à diffuser une annonce. En conservant les annonces dans le cache, vous permettez à Google Mobile Ads Unity Plugin d'actualiser automatiquement les annonces expirées et d'optimiser le cache.

L'exemple suivant récupère et diffuse une annonce préchargée :

// DequeueAd returns the next available ad and loads another ad in the background.
var ad = InterstitialAdPreloader.DequeueAd("AD_UNIT_ID");

if (ad != null)
{
    // [Optional] Interact with the ad object as needed.
    ad.OnAdPaid += (AdValue value) =>
    {
        Debug.Log($"Ad paid: {value.CurrencyCode} {value.Value}");
        // [Optional] Send the impression-level ad revenue information to your preferred
        // analytics server directly within this callback.
    };

    // Do not hold onto preloaded ads, always show a preloaded ad immediately.
    ad.Show();
}

Vérifier la disponibilité des annonces de préchargement

Pour vérifier la disponibilité des annonces, choisissez l'une des options suivantes :

Obtenir la disponibilité des annonces préchargées

L'exemple suivant vérifie la disponibilité des annonces :

var isAdAvailable = InterstitialAdPreloader.IsAdAvailable("AD_UNIT_ID");

Écouter la disponibilité des annonces préchargées

Inscrivez-vous aux événements de préchargement pour être averti lorsque les annonces sont préchargées, ne parviennent pas à être préchargées ou lorsque le cache d'annonces est épuisé.

Les événements de préchargement sont destinés à des fins d'analyse. Dans les rappels d'événements de préchargement :

  • N'appelez pas Preload.
  • Évitez d'appeler DequeueAd, sauf si l'annonce est diffusée immédiatement.

L'exemple suivant enregistre les événements d'annonces :


void StartPreloadWithCallbacks()
{
    var preloadConfiguration = new PreloadConfiguration
    {
        AdUnitId = "AD_UNIT_ID",
        Request = new AdRequest(),
    };

    // Start the preloading initialization process after MobileAds.Initialize().
    InterstitialAdPreloader.Preload(
        // The Preload ID can be any unique string to identify this configuration.
        "AD_UNIT_ID",
        preloadConfiguration,
        onAdPreloaded,
        onAdFailedToPreload,
        onAdsExhausted);
}

void onAdPreloaded(string preloadId, ResponseInfo responseInfo)
{
    Debug.Log($"Preload ad configuration {preloadId} was preloaded.");
}

void onAdFailedToPreload(string preloadId, AdError adError)
{
    string errorMessage = $"Preload ad configuration {preloadId} failed to " +
                          $"preload with error : {adError.GetMessage()}.";
    Debug.Log(errorMessage);
}

void onAdsExhausted(string preloadId)
{
    Debug.Log($"Preload ad configuration {preloadId} was exhausted");
    // [Important] Don't call Preload() or DequeueAd() from onAdsExhausted.
}

Arrêter le préchargement des annonces

Si vous n'avez plus besoin de diffuser d'annonces pour un ID de préchargement dans la session, vous pouvez arrêter le préchargement des annonces. Pour arrêter le préchargement des annonces pour un ID de préchargement spécifique, appelez Destroy avec un ID de préchargement. Pour arrêter le préchargement pour tous les préchargeurs, appelez DestroyAll.

InterstitialAdPreloader.Destroy("AD_UNIT_ID");
InterstitialAdPreloader.DestroyAll();

Définir la taille de la mémoire tampon

La taille de la mémoire tampon contrôle le nombre d'annonces préchargées conservées en mémoire. Par défaut, Google optimise la taille de la mémoire tampon pour équilibrer la consommation de mémoire et la latence de diffusion des annonces. Si votre application diffuse des annonces avant le chargement de l'annonce suivante, vous pouvez définir une taille de mémoire tampon personnalisée pour augmenter le nombre d'annonces conservées en mémoire.

new PreloadConfiguration
{
    AdUnitId = "AD_UNIT_ID",
    Request = new AdRequest(),
    BufferSize = 3
};

Limites du cache de préchargement

Google Mobile Ads Unity Plugin applique une limite à l'échelle de l'application sur le nombre total d'annonces préchargées pour tous les blocs d'annonces et tous les ID de préchargement :

  • Limite par défaut : Google Mobile Ads Unity Plugin conserve un maximum de six annonces préchargées en mémoire. Cette limite est partagée entre tous les formats et tous les ID de préchargement.
  • Nous vous recommandons de conserver une taille de mémoire tampon de deux ou trois par ID de préchargement.