बैनर विज्ञापन, ऐप्लिकेशन के लेआउट में एक जगह पर होते हैं. ये डिवाइस की स्क्रीन पर सबसे ऊपर या सबसे नीचे होते हैं. जब उपयोगकर्ता ऐप्लिकेशन के साथ इंटरैक्ट कर रहे होते हैं, तब वे स्क्रीन पर बने रहते हैं, और एक तय समय के बाद अपने-आप रीफ़्रेश हो सकते हैं. अगर आपने इससे पहले यह गेम शुरू नहीं किया है, तो यह शुरुआत करने के लिए बेहतरीन विकल्प हैं. केस स्टडी.
ज़रूरी शर्तें
- शुरू करें चरण पूरा करें.
- (सिर्फ़ Android में) JNI
jobject
संदर्भ के साथ काम करने की सुविधा (देखें Android जेएनआई से जुड़ी सलाह).
हमेशा टेस्ट विज्ञापनों से टेस्ट करें
अपने ऐप्लिकेशन बनाते और उनकी जांच करते समय पक्का करें कि आप विज्ञापनों के बजाय टेस्ट विज्ञापनों का इस्तेमाल करें लाइव, प्रोडक्शन विज्ञापन. ऐसा न करने पर, आपके खाते को निलंबित किया जा सकता है.
टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका, बैनर के लिए बने हमारे खास टेस्ट विज्ञापन यूनिट आईडी का इस्तेमाल करना है. यह आईडी, हर डिवाइस प्लैटफ़ॉर्म के हिसाब से अलग-अलग होता है:
- 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
का जेएनआईjobject
रेफ़रंस है या iOSUIView
के लिए,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); भविष्य को वैरिएबल के रूप में बनाए रखने के विकल्प के तौर पर, ये काम किए जा सकते हैं शुरू करने के लिए, समय-समय पर शुरू करने की प्रोसेस के स्टेटस की जांच करें
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);
बैनर आकार
नीचे दी गई टेबल में, बैनर के स्टैंडर्ड साइज़ दिए गए हैं.
पॉइंट में साइज़ (WxH) | ब्यौरा | उपलब्धता | 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 में उदाहरण
- इसका सोर्स कोड देखें: क्विकस्टार्ट ऐप्लिकेशन का उदाहरण GitHub में.