पेज पर अचानक दिखने वाले विज्ञापन, फ़ुल-स्क्रीन वाले विज्ञापन होते हैं. ये, ऐप्लिकेशन के इंटरफ़ेस को तब तक कवर करते हैं, जब तक कि उपयोगकर्ता उसे बंद नहीं कर देता. इन्हें आम तौर पर किसी ऐप्लिकेशन के फ़्लो में सामान्य ट्रांज़िशन पॉइंट पर दिखाया जाता है. उदाहरण के लिए, ये गतिविधियों के बीच या गेम में लेवल के बीच रोकने के दौरान दिखते हैं. जब कोई ऐप्लिकेशन पेज पर अचानक दिखने वाला विज्ञापन दिखाता है, तो उपयोगकर्ता के पास विज्ञापन पर टैप करने और अपने डेस्टिनेशन पर जारी रखने या उसे बंद करके ऐप्लिकेशन पर वापस लौटने का विकल्प होता है. केस स्टडी.
इस गाइड में, Google मोबाइल विज्ञापन C++ SDK टूल का इस्तेमाल करके, Android और iOS ऐप्लिकेशन में पेज पर अचानक दिखने वाले विज्ञापनों को इंटिग्रेट करने का तरीका बताया गया है.
ज़रूरी शर्तें
- शुरू करें को पूरा करें.
- (सिर्फ़ Android) JNI
jobject
रेफ़रंस के साथ काम करने की जानकारी (Android JNI के सुझाव देखें).
हमेशा टेस्ट विज्ञापनों से टेस्ट करें
ऐप्लिकेशन बनाते और टेस्ट करते समय, पक्का करें कि आप लाइव विज्ञापनों और प्रोडक्शन विज्ञापनों के बजाय टेस्ट विज्ञापनों का इस्तेमाल करते हों. ऐसा न करने पर, आपका खाता निलंबित किया जा सकता है.
पेज पर अचानक दिखने वाले विज्ञापनों के लिए टेस्ट विज्ञापन यूनिट आईडी का इस्तेमाल करना, टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका है. हर डिवाइस प्लैटफ़ॉर्म पर विज्ञापनों की संख्या अलग-अलग हो सकती है:
- Android:
ca-app-pub-3940256099942544/1033173712
- iOS:
ca-app-pub-3940256099942544/4411468910
उन्हें हर अनुरोध के लिए टेस्ट विज्ञापन दिखाने के लिए, खास तौर पर कॉन्फ़िगर किया गया है. साथ ही, कोडिंग, टेस्टिंग, और डीबग करते समय आप अपने ऐप्लिकेशन में इसका इस्तेमाल कर सकते हैं. अपना ऐप्लिकेशन पब्लिश करने से पहले, पक्का करें कि आप उसकी जगह अपना विज्ञापन यूनिट आईडी डालें.
मोबाइल विज्ञापन SDK के टेस्ट विज्ञापन कैसे काम करते हैं, इस बारे में ज़्यादा जानकारी के लिए, टेस्ट विज्ञापन देखें.
लागू करना
पेज पर अचानक दिखने वाले विज्ञापनों को इंटिग्रेट करने के मुख्य चरण ये हैं:
- विज्ञापन को लोड करें.
- कॉलबैक के लिए रजिस्टर करें.
- विज्ञापन दिखाएं और इसके लाइफ़साइकल इवेंट को हैंडल करें.
InterstitialAd
को कॉन्फ़िगर करें
पेज पर अचानक दिखने वाले विज्ञापन, InterstitialAd
ऑब्जेक्ट में दिखाए जाते हैं. इसलिए, अपने ऐप्लिकेशन में पेज पर अचानक दिखने वाले विज्ञापनों को इंटिग्रेट करने का पहला चरण, InterstitialAd
ऑब्जेक्ट बनाना और उसे शुरू करना है.
अपने ऐप्लिकेशन के C++ कोड में यह हेडर जोड़ें:
#include "firebase/gma/interstial_ad.h"
InterstitialAd
ऑब्जेक्ट का नाम बताएं और इंस्टैंशिएट करें:firebase::gma::InterstitialAd* interstitial_ad; interstitial_ad = new firebase::gma::InterstitialAd();
InterstitialAd
पैरंट टाइप का इस्तेमाल करके,AdParent
टाइप को शुरू करें. पैरंट व्यू एक JNI है जोjobject
को AndroidActivity
की जानकारी देता है या iOSUIView
के बारे में बताता है.// my_ad_parent is a jobject reference to an Android Activity or // a pointer to an iOS UIView. firebase::gma::AdParent ad_parent = static_cast<firebase::gma::AdParent>(my_ad_parent); firebase::Future<void> result = interstitial_ad->Initialize(ad_parent);
आने वाले समय में वैरिएबल के तौर पर बनाए रखने के लिए, समय-समय पर
InterstitialAd
ऑब्जेक्ट पर,InitializeLastResult()
को शुरू करके, इनीशियलाइज़ेशन कार्रवाई की स्थिति देखी जा सकती है. इससे आपके ग्लोबल गेम लूप में शुरू होने वाली प्रोसेस को ट्रैक करने में मदद मिल सकती है.// Monitor the status of the future in your game loop: firebase::Future<void> result = interstitial_ad->InitializeLastResult(); if (result.status() == firebase::kFutureStatusComplete) { // Initialization completed. if(future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization successful. } else { // An error has occurred. } } else { // Initialization on-going. }
firebase::Future
के साथ काम करने के बारे में ज़्यादा जानकारी के लिए,
मेथड कॉल के पूरा होने की स्थिति पर नज़र रखने के लिए, फ़्यूचर सुविधा का इस्तेमाल करना देखें.
विज्ञापन लोड करना
InterstitialAd
ऑब्जेक्ट पर LoadAd()
तरीके का इस्तेमाल करके
विज्ञापन लोड किया जाता है. लोड करने के तरीके के लिए ज़रूरी है कि आपने InterstitialAd
ऑब्जेक्ट शुरू किया हो और आपके पास विज्ञापन यूनिट आईडी और AdRequest
ऑब्जेक्ट हो. firebase::Future
दिखाया जाता है, जिसे आप लोड कार्रवाई की स्थिति
और नतीजे पर नज़र रखने के लिए इस्तेमाल कर सकते हैं.
नीचे दिए गए कोड में बताया गया है कि InterstitialAd
के शुरू होने के बाद, विज्ञापन को कैसे लोड किया जा सकता है:
firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result;
load_ad_result = interstitial_ad->LoadAd(interstitial_ad_unit_id, ad_request);
कॉलबैक के लिए रजिस्टर करें
पेज पर अचानक दिखने वाले विज्ञापन के प्रज़ेंटेशन और लाइफ़साइकल इवेंट की सूचनाएं पाने के लिए, आपको FullScreenContentListener
कक्षा का दायरा बढ़ाना होगा. आपके कस्टम
FullScreenContentListener
सब-क्लास को
InterstitialAd::SetFullScreenContentListener()
तरीके से रजिस्टर किया जा सकता है. साथ ही, यह विज्ञापन को
सफल या असफलता के साथ-साथ खारिज किए जाने पर भी
कॉलबैक मिलेगा.
यहां दिए गए कोड में, क्लास को बढ़ाने और उसे विज्ञापन में असाइन करने का तरीका बताया गया है:
class ExampleFullScreenContentListener : public firebase::gma::FullScreenContentListener { public: ExampleFullScreenContentListener() {} void OnAdClicked() override { // This method is invoked when the user clicks the ad. } void OnAdDismissedFullScreenContent() override { // This method is invoked when the ad dismisses full screen content. } void OnAdFailedToShowFullScreenContent(const AdError& error) override { // This method is invoked when the ad failed to show full screen content. // Details about the error are contained within the AdError parameter. } void OnAdImpression() override { // This method is invoked when an impression is recorded for an ad. } void OnAdShowedFullScreenContent() override { // This method is invoked when the ad showed its full screen content. } }; ExampleFullScreenContentListener* full_screen_content_listener = new ExampleFullScreenContentListener(); interstitial_ad->SetFullScreenContentListener(full_screen_content_listener);
InterstitialAd
एक बार इस्तेमाल होने वाला ऑब्जेक्ट है. इसका मतलब है कि अगर पेज पर अचानक दिखने वाला
विज्ञापन दिखाया जाता है, तो उसे फिर से नहीं दिखाया जा सकता. सबसे सही तरीका यह है कि आप अपने OnAdDismissedFullScreenContent()
FullScreenContentListener
के तरीके में, पेज पर अचानक दिखने वाला कोई दूसरा विज्ञापन लोड करें, ताकि अगला पेज पर अचानक दिखने वाला विज्ञापन
जल्द ही लोड हो जाए और पिछला विज्ञापन खारिज हो जाए.
विज्ञापन दिखाएं
पेज पर अचानक दिखने वाले विज्ञापन, ऐप्लिकेशन के फ़्लो में स्वाभाविक रूप से रुकने के दौरान दिखाए जाने चाहिए.
गेम के लेवल के बीच का समय अच्छा उदाहरण है या जब उपयोगकर्ता टास्क पूरा कर लेता है.
हालांकि, FullScreenContentListener
का इस्तेमाल यह तय करने के लिए किया जा सकता है कि किसी विज्ञापन ने अपना पूरा स्क्रीन कॉन्टेंट कब दिखाया है. हालांकि, Show()
के दिखाए गए आने वाले समय में, यह भी बताया जाएगा कि विज्ञापन कब दिखाया गया.
firebase::Future<void> result = interstitial_ad->Show();
सबसे सही तरीके
- इस बात पर विचार करें कि इंटरस्टीशियल विज्ञापन, आपके ऐप्लिकेशन के लिए सही तरह के विज्ञापन हैं या नहीं.
- अचानक दिखने वाले (इंटरस्टीशियल) विज्ञापन, ट्रांज़िशन के लिए नैचुरल पॉइंट वाले ऐप्लिकेशन पर सबसे अच्छी तरह काम करते हैं. जब किसी ऐप्लिकेशन में कोई टास्क पूरा होता है, तो वह एक पॉइंट बन जाता है. जैसे, इमेज शेयर करना या गेम के लेवल पर काम पूरा करना. उपयोगकर्ता को उम्मीद है कि उससे कार्रवाई में रुकावट आएगी. इसलिए, पेज पर अचानक दिखने वाले विज्ञापन दिखाना आसान हो जाता है. इससे, विज्ञापन देखने वाले के अनुभव में कोई रुकावट नहीं आती. पक्का करें कि आपके ऐप्लिकेशन के वर्कफ़्लो में किन जगहों पर, 'पेज पर अचानक दिखने वाले विज्ञापन' दिखाए जाएंगे और उपयोगकर्ताओं को किस तरह के जवाब मिलने की संभावना है.
- पेज पर अचानक दिखने वाले विज्ञापन दिखाते समय, कार्रवाई को रोकना न भूलें.
- पेज पर अचानक दिखने वाले विज्ञापन कई तरह के होते हैं: टेक्स्ट, इमेज, वीडियो वगैरह. यह पक्का करना ज़रूरी है कि जब आपका ऐप्लिकेशन पेज पर अचानक दिखने वाला
विज्ञापन दिखाता है, तब विज्ञापन भी कुछ संसाधनों का इस्तेमाल करना बंद कर देता है, ताकि विज्ञापन उनका फ़ायदा ले सकें. उदाहरण के लिए, पेज पर अचानक दिखने वाले विज्ञापन को दिखाने के लिए कॉल करते समय, पक्का करें कि आपके ऐप्लिकेशन से आ रहा कोई भी ऑडियो आउटपुट रोक दिया जाए. आप इंस्टॉल किए गए
OnAdDismissedFullScreenContent
तरीके की आवाज़ फिर से शुरू कर सकते हैं. यह आवाज़ तब शुरू होगी, जब उपयोगकर्ता विज्ञापन के साथ इंटरैक्ट कर लेगा. इसके अलावा, विज्ञापन दिखाते समय, किसी भी तरह के कंप्यूटिंग के काम (जैसे कि गेम लूप) को कुछ समय के लिए रोक दें. इससे यह पक्का हो जाता है कि उपयोगकर्ता को ऐसे ग्राफ़िक या बहुत कम रुकावट वाले वीडियो का अनुभव नहीं होगा जो धीमे या अनरिस्पॉन्सिव हैं. - कॉन्टेंट लोड होने में लगने वाला समय कम हो.
- ठीक तरह से पक्का करें कि आप सही समय पर, पेज पर अचानक दिखने वाले विज्ञापन दिखाएं. साथ ही, यह भी पक्का करें कि उपयोगकर्ता को लोड होने का इंतज़ार न करना पड़े. विज्ञापन दिखाने से पहले उसे लोड करने से, यह पक्का हो सकता है कि आपके ऐप्लिकेशन में विज्ञापन दिखाए जाने के समय, पूरी तरह से पेज पर अचानक दिखने वाला विज्ञापन पूरी तरह से तैयार है.
- उपयोगकर्ता को विज्ञापनों से बहुत ज़्यादा लुभाएं.
- आपके ऐप्लिकेशन में अचानक दिखने वाले विज्ञापनों की फ़्रीक्वेंसी बढ़ाने से, आय बढ़ाने का शानदार तरीका लग सकता है. हालांकि, इससे उपयोगकर्ता अनुभव और क्लिक मिलने की दर (सीटीआर) में कमी भी आ सकती है. पक्का करें कि उपयोगकर्ता बार-बार रुकावट न डालें कि वे आपके ऐप्लिकेशन के इस्तेमाल का आनंद न ले पाएं.
- पेज पर अचानक दिखने वाले विज्ञापन को दिखाने के लिए, लोड होने के पूरा होने की प्रोसेस का इस्तेमाल न करें.
- इससे उपयोगकर्ता का अनुभव खराब हो सकता है. इसके बजाय, उसे दिखाने से पहले विज्ञापन को लोड करें.
अतिरिक्त रिसॉर्स
GitHub में उदाहरण
- GitHub में हमारे उदाहरण quickstart ऐप्लिकेशन का सोर्स कोड देखें.
मोबाइल विज्ञापन गैराज वीडियो ट्यूटोरियल
सफलता की कहानियां
अगले चरण
- अगर आपने पहले से नहीं बनाया है, तो AdMob यूज़र इंटरफ़ेस (यूआई) में, पेज पर अचानक दिखने वाली अपनी विज्ञापन यूनिट बनाएं.
- विज्ञापन टारगेटिंग और अचानक दिखने वाले विज्ञापन से जुड़े दिशा-निर्देशों के बारे में जानें.