इनाम वाले इंटरस्टीशियल विज्ञापन, एक तरह के विज्ञापन फ़ॉर्मैट हैं. इनकी मदद से, ऐप्लिकेशन में स्वाभाविक तौर पर हुए ट्रांज़िशन के दौरान दिखने वाले विज्ञापनों के लिए, इनाम दिए जा सकते हैं. इनाम वाले विज्ञापनों के उलट, उपयोगकर्ता इनाम वाला इंटरस्टीशियल वीडियो देखने के लिए, ऑप्ट-इन करना ज़रूरी है. इस गाइड में, AdMob से इनाम वाले इंटरस्टीशियल विज्ञापनों को Flutter ऐप्लिकेशन में इंटिग्रेट करने का तरीका बताया गया है.
ज़रूरी शर्तें
- Flutter प्लगिन 1.1.0 या इसके बाद वाला वर्शन.
- शुरू करें को पूरा करें. आपका Flutter ऐप्लिकेशन में Google Mobile Ads Flutter प्लगिन पहले से मौजूद होना चाहिए आयात किया गया.
हमेशा टेस्ट विज्ञापनों से टेस्ट करें
अपने ऐप्लिकेशन बनाते और टेस्ट करते समय, लाइव और प्रोडक्शन विज्ञापनों के बजाय, टेस्ट विज्ञापनों का इस्तेमाल करें. ऐसा न करने पर, आपका खाता निलंबित किया जा सकता है.
टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका यह है कि आप इनाम वाले इंटरस्टीशियल विज्ञापन:
Android
ca-app-pub-3940256099942544/5354046379
iOS
ca-app-pub-3940256099942544/6978759866
टेस्ट विज्ञापन यूनिट को, हर अनुरोध के हिसाब से टेस्ट विज्ञापन दिखाने के लिए कॉन्फ़िगर किया जाता है और कोडिंग, टेस्टिंग, और डीबग करने के दौरान, इन्हें अपने ऐप्लिकेशन में इस्तेमाल किया जा सकता है. बस पक्का करें कि ऐप्लिकेशन पब्लिश करने से पहले, उन्हें अपनी विज्ञापन यूनिट के आईडी से बदल दिया जाए.
विज्ञापन लोड करना
इस उदाहरण में, इनाम वाला इंटरस्टीशियल विज्ञापन लोड किया गया है:
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'); }, )); } }
इनाम वाले इंटरस्टीशियल विज्ञापन इवेंट
FullScreenContentCallback
का इस्तेमाल करके, लाइफ़साइकल के हिसाब से सुना जा सकता है
इवेंट, जैसे कि विज्ञापन कब दिखाया या खारिज किया गया. इन इवेंट की सूचनाएं पाने के लिए, विज्ञापन दिखाने से पहले RewardedInterstitialAd.fullScreenContentCallback
सेट करें. इस उदाहरण में, सभी तरीके लागू किए गए हैं और
कंसोल में मैसेज लॉग करता है:
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'); }, )); } }
Display Network में दिखने वाला विज्ञापन
RewardedInterstitialAd
को ऐप्लिकेशन के सभी कॉन्टेंट के ऊपर ओवरले के तौर पर दिखाया जाता है और इसे स्टैटिक तौर पर रखा जाता है. इसलिए, इसे Flutter विजेट ट्री में नहीं जोड़ा जा सकता.
show()
को कॉल करके, यह चुना जा सकता है कि विज्ञापन कब दिखाया जाए.
RewardedInterstitialAd.show()
को एक OnUserEarnedRewardCallback
मिलता है, जो कि
यह तब शुरू किया जाता है, जब उपयोगकर्ता कोई इनाम हासिल करता है. इसे लागू करना न भूलें. साथ ही,
का इस्तेमाल करते हैं.
_rewardedInterstitialAd.show(onUserEarnedReward: (AdWithoutView ad, RewardItem rewardItem) { // Reward the user for watching an ad. });
show()
को कॉल करने के बाद, इस तरह से दिखाए गए Ad
को प्रोग्राम के ज़रिए नहीं हटाया जा सकता. इसके लिए, उपयोगकर्ता के इनपुट की ज़रूरत होती है. RewardedInterstitialAd
को सिर्फ़ एक बार दिखाया जा सकता है. बाद में दिखाए जाने वाले कॉल ट्रिगर होंगे
onAdFailedToShowFullScreenContent
.
जब किसी विज्ञापन का ऐक्सेस ज़रूरी न हो, तो उसे हटा देना चाहिए. सबसे सही तरीका
dispose()
को कब कॉल करना है, यह जानने के लिए
FullScreenContentCallback.onAdDismissedFullScreenContent
और
FullScreenContentCallback.onAdFailedToShowFullScreenContent
कॉलबैक.
हो गया! अब आपका ऐप्लिकेशन, इनाम वाले इंटरस्टीशियल विज्ञापन दिखाने के लिए तैयार है.