Le préchargement des annonces est une fonctionnalité de chargement des annonces gérée par Google dans Google Mobile Ads Unity Plugin. Elle 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 leur chargement. 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 pour que vous n'ayez pas à gérer les références tant que vous n'êtes pas prêt à les afficher.
- Rechargement automatique : une nouvelle annonce est automatiquement chargée lorsque vous en retirez une du cache.
- Nouvelles tentatives gérées : les requêtes ayant échoué sont automatiquement relancées à l'aide d'un intervalle exponentiel entre les tentatives.
- Gestion de l'expiration : les annonces sont automatiquement actualisées 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 préchargées, vérifier leur disponibilité et les afficher.
Prérequis
Avant de commencer le tutoriel, vous devez effectuer les opérations suivantes :
- Installez la version 10.3.0 ou ultérieure de Google Mobile Ads Unity Plugin.
- Configurer Google Mobile Ads Unity Plugin
Utilisez la version
24.4.0du SDK Android et la version12.6.0du SDK iOS.Facultatif : Téléchargez et exécutez l'exemple d'application de préchargement d'annonces.
Commencer à précharger les annonces
Pour commencer à précharger les annonces, appelez Preload(). Appelez cette méthode une seule fois au début de l'application. Après avoir appelé 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 lance le préchargement 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 afficher l'annonce préchargée
Lorsque vous utilisez le préchargement d'annonces, Google Mobile Ads Unity Plugin contient 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 la suivante en arrière-plan.
Évitez d'appeler cette méthode tant que vous n'êtes pas prêt à afficher une annonce. Le fait de conserver les annonces dans le cache permet à Google Mobile Ads Unity Plugin d'actualiser automatiquement les annonces expirées et d'optimiser le cache.
L'exemple suivant récupère et affiche 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 préchargées
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
Enregistrez-vous aux événements de préchargement pour être averti lorsque des annonces sont préchargées avec succès, échouent à se précharger 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énement de préchargement :
- N'appelez pas
Preload(). - Évitez d'appeler
DequeueAd(), sauf si l'annonce doit être diffusée immédiatement.
L'exemple suivant enregistre les événements publicitaires :
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.
InterstitialAdPreloader.Destroy(AD_UNIT_ID);
InterstitialAdPreloader.DestroyAll();
Définir la taille de la mémoire tampon
La taille du tampon contrôle le nombre d'annonces préchargées conservées en mémoire. Par défaut, Google optimise la taille du tampon pour équilibrer la consommation de mémoire et la latence de diffusion des annonces. Si votre application affiche des annonces avant le chargement de la suivante, vous pouvez définir une taille de tampon personnalisée pour augmenter le nombre d'annonces conservées en mémoire. Nous vous recommandons de ne pas dépasser une taille de mémoire tampon de quatre.
new PreloadConfiguration
{
AdUnitId = AD_UNIT_ID,
Request = new AdRequest(),
BufferSize = 5
};