L'interstitiel avec récompense est un format d'annonce incitatif qui vous permet de récompense pour les annonces qui s'affichent automatiquement lors des transitions naturelles de l'application. Contrairement aux annonces avec récompense, pour pouvoir regarder un interstitiel avec récompense. Ce guide vous explique comment intégrer des annonces interstitielles avec récompense à partir d'AdMob dans une application Flutter.
Prérequis
- Plug-in Flutter version 1.1.0 ou ultérieure.
- Suivez la procédure Commencer. Votre L'application Flutter doit déjà disposer du plug-in Google Mobile Ads Flutter importés.
Toujours tester avec des annonces tests
Lorsque vous créez et testez vos applications, veillez à utiliser des annonces tests plutôt que des annonces de production. À défaut, votre compte risque d'être suspendu.
Le moyen le plus simple de charger des annonces tests consiste à utiliser notre ID de bloc d'annonces test dédié annonces interstitielles avec récompense:
Android
ca-app-pub-3940256099942544/5354046379
iOS
ca-app-pub-3940256099942544/6978759866
Les blocs d'annonces tests sont configurés pour renvoyer des annonces tests pour chaque demande. vous êtes libre de les utiliser dans vos propres applications lors du codage, des tests et du débogage. Veillez simplement à les remplacer par vos propres ID de bloc d'annonces avant de les publier. votre application.
Charger une annonce
L'exemple suivant charge une annonce interstitielle avec récompense:
class RewardedInterstitialExampleState extends State<RewardedInterstitialExample> { RewardedInterstitialAd? _rewardeInterstitialdAd; // TODO: replace this test ad unit with your own ad unit. final adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/5354046379' : 'ca-app-pub-3940256099942544/6978759866'; /// Loads a rewarded ad. void loadAd() { RewardedInterstitialAd.load( adUnitId: adUnitId, adRequest: const AdRequest(), adLoadCallback: RewardedInterstitialAdLoadCallback( // Called when an ad is successfully received. onAdLoaded: (ad) { debugPrint('$ad loaded.'); // Keep a reference to the ad so you can show it later. _rewardedInterstitialAd = ad; }, // Called when an ad request failed. onAdFailedToLoad: (LoadAdError error) { debugPrint('RewardedInterstitialAd failed to load: $error'); }, )); } }
Événements d'annonces interstitielles avec récompense
Grâce à FullScreenContentCallback
, vous pouvez écouter le cycle de vie
des événements, tels que l'affichage ou la fermeture de l'annonce. Définir
RewardedInterstitialAd.fullScreenContentCallback
avant de diffuser l'annonce auprès de
recevoir des notifications pour ces événements. Cet exemple met en œuvre chaque méthode et
enregistre un message dans la console:
class RewardedInterstitialExampleState extends State<RewardedInterstitialExample> { RewardedInterstitialAd? _rewardedInterstitialAd; // TODO: replace this test ad unit with your own ad unit. final adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/5354046379' : 'ca-app-pub-3940256099942544/6978759866'; /// Loads a rewarded ad. void loadAd() { RewardedInterstitialAd.load( adUnitId: adUnitId, adRequest: const AdRequest(), adLoadCallback: RewardedInterstitialAdLoadCallback( // Called when an ad is successfully received. onAdLoaded: (ad) { ad.fullScreenContentCallback = FullScreenContentCallback( // Called when the ad showed the full screen content. onAdShowedFullScreenContent: (ad) {}, // Called when an impression occurs on the ad. onAdImpression: (ad) {}, // Called when the ad failed to show full screen content. onAdFailedToShowFullScreenContent: (ad, err) { // Dispose the ad here to free resources. ad.dispose(); }, // Called when the ad dismissed full screen content. onAdDismissedFullScreenContent: (ad) { // Dispose the ad here to free resources. ad.dispose(); }, // Called when a click is recorded for an ad. onAdClicked: (ad) {}); debugPrint('$ad loaded.'); // Keep a reference to the ad so you can show it later. _rewardedInterstitialAd = ad; }, // Called when an ad request failed. onAdFailedToLoad: (LoadAdError error) { debugprint('RewardedInterstitialAd failed to load: $error'); }, )); } }
Annonce display
Un RewardedInterstitialAd
s'affiche en superposition sur tout le contenu de l'application
et est placé de manière statique ; Il ne peut donc pas être ajouté à l'arborescence des widgets Flutter.
Vous pouvez choisir à quel moment diffuser l'annonce en appelant show()
.
RewardedInterstitialAd.show()
utilise un OnUserEarnedRewardCallback
, qui est
invoquée lorsque l'utilisateur gagne une récompense. Assurez-vous de mettre en œuvre
ces recommandations et de récompenser
après avoir regardé une annonce.
_rewardedInterstitialAd.show(onUserEarnedReward: (AdWithoutView ad, RewardItem rewardItem) { // Reward the user for watching an ad. });
Une fois show()
appelé, un Ad
affiché de cette manière ne peut pas être supprimé.
de façon programmatique
et nécessite une entrée utilisateur. Un RewardedInterstitialAd
ne peut
ne s'afficheront qu'une seule fois. Les appels suivants à afficher déclencheront
onAdFailedToShowFullScreenContent
Une annonce doit être supprimée lorsque l'accès n'est plus nécessaire. La bonne pratique
pour savoir quand appeler dispose()
se trouve dans
FullScreenContentCallback.onAdDismissedFullScreenContent
et
Rappels FullScreenContentCallback.onAdFailedToShowFullScreenContent
.
Et voilà ! Votre application est maintenant prête à diffuser des annonces interstitielles avec récompense.