Certaines applications nécessitent de corréler deux demandes d'annonces.
Le SDK Google Mobile Ads ne vous permet pas de corréler deux demandes, ce qui rend difficile d'empêcher la diffusion de la même création pour deux demandes d'annonces similaires. Les demandes d'annonces corrélées sont également requises pour les fonctionnalités de roadblock et d'exclusion de concurrents dans Ad Manager.
Une valeur de corrélateur est un entier non signé aléatoire de 16 caractères, représenté sous forme de chaîne. Par défaut, le SDK GMA génère un nouveau corrélateur à chaque demande d'annonce, ce qui signifie qu'aucune requête n'est corrélée.
Pour corréler deux demandes, vous pouvez remplacer manuellement le corrélateur généré par le SDK GMA et appliquer le même corrélateur à plusieurs demandes d'annonces. Pour utiliser cette fonctionnalité, vous devez générer votre propre corrélateur aléatoire. Voici des exemples de la façon de transmettre votre propre corrélateur :
Java
Bundle extras = new Bundle();
String correlator = "2510196024846425"; // make randomly - should be 16 digits.
extras.putString("correlator", correlator);
AdManagerAdRequest request = new AdManagerAdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter.class, extras)
.build();
Kotlin
val extras = Bundle()
val correlator = "2510196024846425" // make randomly - should be 16 digits.
extras.putString("correlator", correlator)
val request = AdManagerAdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter::class.java, extras)
.build()
La durée de vie du corrélateur est de 30 secondes. Les demandes effectuées à plus de 30 secondes d'intervalle ne seront pas considérées comme corrélées par le serveur.
Bonnes pratiques
L'utilisation du corrélateur personnalisé fournira à Ad Manager le contexte dont il a besoin pour éviter de sélectionner la même création. Toutefois, les demandes d'annonces doivent être effectuées de manière séquentielle : envoyez une demande d'annonce, obtenez la réponse, puis envoyez la demande suivante.
Vous pouvez effectuer cette opération plusieurs fois, mais plus vous effectuez d'appels, plus vous consommez de ressources. Il est préférable de limiter les requêtes séquentielles à trois ou cinq. Vous pouvez effectuer des appels supplémentaires lorsque l'utilisateur fait défiler la page vers le bas.
Étant donné que le corrélateur expire au bout de 30 secondes, vous n'avez pas besoin de générer une nouvelle valeur pour la même vue de page longue. Générez un nouveau corrélateur au début de chaque nouvelle page vue de longue durée. Si vous n'avez plus besoin de ce comportement, arrêtez de transmettre votre propre corrélateur.
Pour éviter que les annonces que vous avez renvoyées ne soient diffusées lors des appels suivants après l'expiration du corrélateur, envisagez d'ajouter une limite de fréquence d'une annonce toutes les cinq à dix minutes. L'heure que vous sélectionnez doit correspondre à l'utilisation habituelle de votre application. Les limites de fréquence peuvent être supprimées si vous ne diffusez pas les annonces. Par conséquent, si vous envoyez une demande d'annonce, mais que vous ne la diffusez pas et que vous effectuez d'autres appels, vous risquez de recevoir la même annonce.