Avant de commencer
Avant de continuer, procédez comme suit :
- Configurer Google Mobile Ads SDK (Legacy)
- Utilisez l'ID du bloc d'annonces avec récompense de test
ca-app-pub-3940256099942544/5224354917.- Lorsque vous créez et testez vos applications, assurez-vous d'utiliser des annonces tests plutôt que des annonces de production. Si vous n'utilisez pas l'ID de bloc d'annonces de test, Google peut suspendre votre compte.
- Avant de publier votre application, remplacez cet ID par votre ID de bloc d'annonces.
- Pour en savoir plus sur les annonces tests Google Mobile Ads SDK (Legacy), consultez Activer les annonces tests.
Charger un objet d'annonce avec récompense
Les annonces avec récompense sont chargées en appelant la méthode statique load sur la classe RewardedAd et en transmettant un RewardedAdLoadCallback. Cette opération est généralement effectuée dans la méthode onCreate d'un Activity.
Notez que, comme les autres rappels de chargement de format, RewardedAdLoadCallback utilise LoadAdError pour fournir des informations plus précises sur les erreurs.
Java
Kotlin
Remplacez AD_UNIT_ID par l'ID de votre bloc d'annonces.
Définir FullScreenContentCallback
Le FullScreenContentCallback gère les événements liés à l'affichage de votre RewardedAd. Avant d'afficher votre RewardedAd, assurez-vous de définir le rappel comme suit :
Java
rewardedAd.setFullScreenContentCallback(
new FullScreenContentCallback() {
@Override
public void onAdDismissedFullScreenContent() {
// Called when fullscreen content is dismissed.
Log.d(TAG, "Ad was dismissed.");
// Don't forget to set the ad reference to null so you
// don't show the ad a second time.
rewardedAd = null;
}
@Override
public void onAdFailedToShowFullScreenContent(AdError adError) {
// Called when fullscreen content failed to show.
Log.d(TAG, "Ad failed to show.");
// Don't forget to set the ad reference to null so you
// don't show the ad a second time.
rewardedAd = null;
}
@Override
public void onAdShowedFullScreenContent() {
// Called when fullscreen content is shown.
Log.d(TAG, "Ad showed fullscreen content.");
}
@Override
public void onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.");
}
@Override
public void onAdClicked() {
// Called when an ad is clicked.
Log.d(TAG, "Ad was clicked.");
}
});
Kotlin
rewardedAd?.fullScreenContentCallback =
object : FullScreenContentCallback() {
override fun onAdDismissedFullScreenContent() {
// Called when fullscreen content is dismissed.
Log.d(TAG, "Ad was dismissed.")
// Don't forget to set the ad reference to null so you
// don't show the ad a second time.
rewardedAd = null
}
override fun onAdFailedToShowFullScreenContent(adError: AdError) {
// Called when fullscreen content failed to show.
Log.d(TAG, "Ad failed to show.")
// Don't forget to set the ad reference to null so you
// don't show the ad a second time.
rewardedAd = null
}
override fun onAdShowedFullScreenContent() {
// Called when fullscreen content is shown.
Log.d(TAG, "Ad showed fullscreen content.")
}
override fun onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.")
}
override fun onAdClicked() {
// Called when an ad is clicked.
Log.d(TAG, "Ad was clicked.")
}
}
Diffuser l'annonce
Lorsque vous affichez une annonce avec récompense, utilisez un objet OnUserEarnedRewardListener pour gérer les événements de récompense.
Java
rewardedAd.show(
MainActivity.this,
new OnUserEarnedRewardListener() {
@Override
public void onUserEarnedReward(@NonNull RewardItem rewardItem) {
Log.d(TAG, "User earned the reward.");
// Handle the reward.
}
});
Kotlin
rewardedAd?.show(
this,
OnUserEarnedRewardListener { rewardItem ->
Log.d(TAG, "User earned the reward.")
// Handle the reward.
val rewardAmount = rewardItem.amount
val rewardType = rewardItem.type
},
)
Pour les annonces diffusées par Google, Google Mobile Ads SDK (Legacy) appelle la méthode onUserEarnedReward avant la méthode onAdDismissedFullScreenContent. Pour les annonces diffusées avec la médiation AdMob, la source d'annonces tierce détermine l'ordre des rappels. Pour les sources d'annonces qui fournissent un seul rappel de fermeture avec des informations sur la récompense, l'adaptateur de médiation appelle la méthode onUserEarnedReward avant la méthode onAdDismissedFullScreenContent. Pour en savoir plus, consultez Configurer la médiation AdMob.
Facultatif : Valider les URL de rappel de la validation côté serveur
Les applications qui nécessitent des données supplémentaires dans les rappels de validation côté serveur doivent utiliser la fonctionnalité de données personnalisées des annonces avec récompense. Toute valeur de chaîne définie sur un objet d'annonce avec récompense est transmise au paramètre de requête custom_data du rappel SSV. Si aucune valeur de données personnalisée n'est définie, la valeur du paramètre de requête custom_data ne sera pas présente dans le rappel SSV.
L'exemple de code suivant montre comment définir des données personnalisées sur un objet d'annonce avec récompense avant de demander une annonce.
Java
Kotlin
Remplacez SAMPLE_CUSTOM_DATA_STRING par vos données personnalisées.
Si vous souhaitez définir la chaîne de récompense personnalisée, vous devez le faire avant d'afficher l'annonce.
Exemples sur GitHub
Étapes suivantes
Consultez les rubriques suivantes :