बैनर विज्ञापन, ऐप्लिकेशन के लेआउट में एक जगह पर होते हैं. ये डिवाइस की स्क्रीन पर सबसे ऊपर या सबसे नीचे होते हैं. जब उपयोगकर्ता आपके ऐप्लिकेशन के साथ इंटरैक्ट करते हैं, तब स्क्रीन पर सबसे ऊपर या सबसे नीचे बैनर विज्ञापन दिखते रहते हैं. ये विज्ञापन कुछ समय बाद अपने-आप रीफ़्रेश हो सकते हैं. अगर आपको मोबाइल विज्ञापन देने का अनुभव नहीं है, तो इनसे शुरुआत करें. केस स्टडी.
ज़रूरी शर्तें
- शुरू करें को पूरा करें.
- (सिर्फ़ Android के लिए) JNI
jobject
रेफ़रंस के साथ काम करने की जानकारी होनी चाहिए (Android JNI के बारे में सलाह देखें).
हमेशा टेस्ट विज्ञापनों की मदद से जांच करें
अपने ऐप्लिकेशन बनाते और टेस्ट करते समय, लाइव और प्रोडक्शन विज्ञापनों के बजाय, टेस्ट विज्ञापनों का इस्तेमाल करें. ऐसा न करने पर, आपके खाते को निलंबित किया जा सकता है.
टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका, बैनर के लिए बने हमारे खास टेस्ट विज्ञापन यूनिट आईडी का इस्तेमाल करना है. यह आईडी, हर डिवाइस प्लैटफ़ॉर्म के हिसाब से अलग-अलग होता है:
- Android:
ca-app-pub-3940256099942544/6300978111
- iOS:
ca-app-pub-3940256099942544/2934735716
इन विज्ञापन यूनिट आईडी को खास तौर पर, हर अनुरोध के लिए टेस्ट विज्ञापन दिखाने के लिए कॉन्फ़िगर किया गया है. साथ ही, कोडिंग, टेस्टिंग, और डीबग करने के दौरान, अपने ऐप्लिकेशन में इनका इस्तेमाल किया जा सकता है. बस, ऐप्लिकेशन पब्लिश करने से पहले, इसे अपनी विज्ञापन यूनिट के आईडी से बदलना न भूलें.
Mobile Ads SDK के टेस्ट विज्ञापनों के काम करने के तरीके के बारे में ज़्यादा जानने के लिए, टेस्ट विज्ञापन लेख पढ़ें.
लागू करना
AdView
को कॉन्फ़िगर करना
बैनर विज्ञापन, AdView
ऑब्जेक्ट में दिखाए जाते हैं. इसलिए, बैनर विज्ञापनों को इंटिग्रेट करने का पहला चरण, AdView
बनाना और उसे पोज़िशन करना है.
अपने ऐप्लिकेशन के C++ कोड में यह हेडर जोड़ें:
#include "firebase/gma/ad_view.h"
AdView
ऑब्जेक्ट का एलान करें और उसका इंस्टेंस बनाएं:firebase::gma::AdView* ad_view; ad_view = new firebase::gma::AdView();
AdSize
बनाएं औरAdParent
पैरंट व्यू का इस्तेमाल करके विज्ञापन व्यू को शुरू करें. पैरंट व्यू, AndroidActivity
के लिए JNIjobject
रेफ़रंस याAdParent
टाइप में कास्ट किए गए 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
result = ad_view->Initialize(ad_parent, kBannerAdUnit, firebase::gma::AdSize::kBanner); फ़्यूचर को वैरिएबल के तौर पर सेव करने के बजाय,
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. }
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 constant |
---|---|---|---|
320x50 | बैनर | फ़ोन और टेबलेट | kBanner |
320x100 | बड़ा बैनर | फ़ोन और टेबलेट | kLargeBanner |
300x250 | IAB मीडियम रेक्टैंगल | फ़ोन और टेबलेट | kMediumRectangle |
468x60 | आईएबी फ़ुल-साइज़ बैनर | टैबलेट | kFullBanner |
728x90 | IAB लीडरबोर्ड | टैबलेट | kLeaderboard |
तय की गई चौड़ाई x ज़रूरत के हिसाब से ऊंचाई | अडैप्टिव बैनर | फ़ोन और टेबलेट | लागू नहीं |
विज्ञापन के कस्टम साइज़
कस्टम बैनर साइज़ तय करने के लिए, चौड़ाई और ऊंचाई पैरामीटर के साथ firebase::gma::AdSize
कंस्ट्रक्टर का इस्तेमाल करके, अपने पसंदीदा डाइमेंशन सेट करें, जैसा कि यहां दिखाया गया है:
firebase::gma::AdSize ad_size(/*width=*/320, /*height=*/50);
अन्य संसाधन
GitHub में उदाहरण
- GitHub पर, हमारे उदाहरण के तौर पर दिए गए, तुरंत शुरू किए जा सकने वाले ऐप्लिकेशन का सोर्स कोड देखें.