बैनर विज्ञापन

बैनर विज्ञापन, ऐप्लिकेशन के लेआउट में किसी जगह पर दिखते हैं. ये डिवाइस की स्क्रीन पर सबसे ऊपर या सबसे नीचे दिखते हैं. जब उपयोगकर्ता आपके ऐप्लिकेशन के साथ इंटरैक्ट करते हैं, तब स्क्रीन पर सबसे ऊपर या सबसे नीचे बैनर विज्ञापन दिखते रहते हैं. वहीं, ये कुछ समय बाद अपने-आप रीफ़्रेश हो सकते हैं. अगर आपको मोबाइल विज्ञापन के बारे में ज़्यादा जानकारी नहीं है, तो यहां से शुरुआत करना बेहतर होगा. केस स्टडी.

ज़रूरी शर्तें

हमेशा टेस्ट विज्ञापनों का इस्तेमाल करके टेस्ट करें

अपने ऐप्लिकेशन बनाते और उनकी टेस्टिंग करते समय, पक्का करें कि आपने लाइव और प्रोडक्शन विज्ञापनों के बजाय, टेस्ट विज्ञापनों का इस्तेमाल किया हो. ऐसा न करने पर, आपका खाता निलंबित किया जा सकता है.

टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका है कि बैनर के लिए, टेस्ट विज्ञापन यूनिट आईडी का इस्तेमाल किया जाए. यह आईडी, डिवाइस प्लैटफ़ॉर्म के हिसाब से अलग-अलग होता है:

  • Android: ca-app-pub-3940256099942544/6300978111
  • iOS: ca-app-pub-3940256099942544/2934735716

इन विज्ञापन यूनिट आईडी को खास तौर पर कॉन्फ़िगर किया गया है, ताकि हर अनुरोध के लिए टेस्ट विज्ञापन दिखाए जा सकें. कोडिंग, टेस्टिंग, और डीबग करने के दौरान, अपने ऐप्लिकेशन में इनका इस्तेमाल किया जा सकता है. हालांकि, ऐप्लिकेशन पब्लिश करने से पहले, इसे अपनी विज्ञापन यूनिट के आईडी से बदलना न भूलें.

Mobile Ads SDK के टेस्ट विज्ञापन के काम करने के तरीके के बारे में ज़्यादा जानने के लिए, टेस्ट विज्ञापन लेख पढ़ें.

लागू करना

AdView को कॉन्फ़िगर करना

बैनर विज्ञापन, AdView ऑब्जेक्ट में दिखाए जाते हैं. इसलिए, बैनर विज्ञापनों को इंटिग्रेट करने का पहला चरण, AdView बनाना और उसे पोज़िशन करना है.

  1. अपने ऐप्लिकेशन के C++ कोड में यह हेडर जोड़ें:

     #include "firebase/gma/ad_view.h"
  2. AdView ऑब्जेक्ट को तय करें और इंस्टैंशिएट करें:

      firebase::gma::AdView* ad_view;
      ad_view = new firebase::gma::AdView();
  3. AdSize बनाएं और AdParent पैरंट व्यू का इस्तेमाल करके विज्ञापन व्यू को शुरू करें. पैरंट व्यू, Android Activity के लिए JNI jobject रेफ़रंस होता है. इसके अलावा, यह iOS UIView के लिए AdParent टाइप में कास्ट किया गया पॉइंटर भी होता है:

     // 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 result =
       ad_view->Initialize(ad_parent, kBannerAdUnit, firebase::gma::AdSize::kBanner);
  4. 'आने वाला समय' को वैरिएबल के तौर पर बनाए रखने के बजाय, AdView ऑब्जेक्ट पर InitializeLastResult() को लागू करके, समय-समय पर इनिशियलाइज़ेशन की प्रोसेस का स्टेटस देखा जा सकता है. इससे आपको ग्लोबल गेम लूप में, शुरू होने की प्रोसेस को ट्रैक करने में मदद मिल सकती है.

      // Monitor the status of the future in your game loop:
      firebase::Future<void> result = ad_view->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.
      }
    
  5. firebase::Future के साथ काम करने के बारे में ज़्यादा जानने के लिए, तरीके के कॉल पूरे होने की स्थिति को मॉनिटर करने के लिए, फ़्यूचर का इस्तेमाल करना लेख पढ़ें.

विज्ञापन की पोज़िशन सेट करना

AdView को शुरू करने के बाद, इसकी पोज़िशन कभी भी सेट की जा सकती है:

firebase::Future<void> result = ad_view->SetPosition(firebase::gma::AdView::kPositionTop);

विज्ञापन लोड करना

AdView के शुरू होने के बाद, विज्ञापन लोड किया जा सकता है:

firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result = ad_view->LoadAd(my_ad_request);

AdRequest ऑब्जेक्ट, विज्ञापन के एक अनुरोध को दिखाते हैं. इनमें टारगेटिंग जैसी जानकारी के लिए प्रॉपर्टी शामिल होती हैं.

विज्ञापन दिखाना

आखिर में, Show() को कॉल करके, विज्ञापन को स्क्रीन पर दिखाएं. विज्ञापन के शुरू होने के बाद, इस तरीके को किसी भी समय लागू किया जा सकता है:

firebase::Future<void> result = ad_view->Show();

विज्ञापन इवेंट

Google Mobile Ads C++ SDK, AdListener क्लास उपलब्ध कराता है. इसे बढ़ाया जा सकता है और AdView::SetListener() को पास किया जा सकता है, ताकि विज्ञापन व्यू की स्थिति में होने वाले बदलावों के बारे में सूचना मिल सके.

AdListener में तरीकों को बढ़ाना ज़रूरी नहीं है. इसलिए, आपको सिर्फ़ उन तरीकों को लागू करना होगा जिन्हें आपको इस्तेमाल करना है. नीचे, AdListener क्लास के सभी तरीकों को बढ़ाने वाली क्लास को लागू करने का उदाहरण दिया गया है:

class ExampleAdListener
    : public firebase::gma::AdListener {
 public:
  ExampleAdListener() {}
  void OnAdClicked() override {
    // This method is invoked when the user clicks the ad.
  }

  void OnAdClosed() override {
   // This method is invoked when the user closes the ad.
  }

  void OnAdImpression() override {
    // This method is invoked when an impression is recorded for an ad.
  }

  void OnAdOpened() override {
    // This method is invoked when an ad opens an overlay that covers the screen.
  }
};

ExampleAdListener* ad_listener = new ExampleAdListener();
ad_view->SetAdListener(ad_listener);

यहां दी गई टेबल में, बैनर के स्टैंडर्ड साइज़ दिए गए हैं.

पॉइंट में साइज़ (चौड़ाई x ऊंचाई) ब्यौरा उपलब्धता firebase::gma::AdSize कॉन्स्टेंट
320x50 बैनर फ़ोन और टेबलेट kBanner
320x100 बड़ा बैनर फ़ोन और टेबलेट kLargeBanner
300x250 IAB मीडियम रेक्टैंगल फ़ोन और टेबलेट kMediumRectangle
468x60 IAB का फ़ुल-साइज़ बैनर टैबलेट kFullBanner
728x90 IAB लीडरबोर्ड टैबलेट kLeaderboard
दी गई चौड़ाई x ज़रूरत के हिसाब से ऊंचाई अडैप्टिव बैनर फ़ोन और टेबलेट लागू नहीं

विज्ञापन के कस्टम साइज़

कस्टम बैनर का साइज़ तय करने के लिए, चौड़ाई और ऊंचाई वाले पैरामीटर के साथ firebase::gma::AdSize कंस्ट्रक्टर का इस्तेमाल करके, अपने हिसाब से डाइमेंशन सेट करें. यहां दिए गए उदाहरण में देखें:

firebase::gma::AdSize ad_size(/*width=*/320, /*height=*/50);

अन्य संसाधन

GitHub में उदाहरण

सफलता की कहानियां