Firebase C++ SDK टूल के वर्शन 9.1.0 की रिलीज़ के साथ, Google Mobile Ads C++ SDK टूल का नया वर्शन लॉन्च किया गया है.
Google Mobile Ads C++ SDK टूल, एक नया एपीआई प्लैटफ़ॉर्म है. इसमें, 2021 और 2022 में iOS और Android के लिए, Firebase AdMob C++ SDK टूल में किए गए बड़े बदलाव शामिल हैं. इनमें, काम न करने वाले एपीआई को हटाना और फ़ुल स्क्रीन विज्ञापन टाइप के साथ काम करते समय नया फ़्लो शामिल है.
Firebase AdMob C++ SDK टूल के पुराने वर्शन (firebase::admob
) को 'इस्तेमाल नहीं किया जा सकता' के तौर पर मार्क कर दिया गया है. साथ ही, अब इसे अपडेट नहीं किया जाएगा और इसमें मौजूद गड़बड़ियों को ठीक नहीं किया जाएगा.
Firebase AdMob C++ SDK टूल के बंद होने की अवधि के दौरान, Google Mobile Ads C++ SDK टूल (firebase::gma
) का नया वर्शन और Firebase AdMob C++ SDK टूल (firebase::admob
) का पुराना वर्शन, Firebase C++ SDK टूल के बिल्ड संग्रह का हिस्सा बना रहेगा.
लेगसी एपीआई को हटाना
नीचे दिए गए एपीआई को Google Mobile Ads C++ SDK से पूरी तरह हटा दिया गया है.
RewardedVideoAd
AdMob के RewardedVideoAd
नेमस्पेस को RewardedAd
क्लास से बदल दिया गया है. RewardedAd
, InterstitialAd
की तरह ही काम करता है. हालांकि, इसमें आइटम के इनामों की सूचना पाने के लिए एक और RewardedAdListener
शामिल होता है.
NativeExpressAds
हर Firebase AdMob C++ SDK टूल में, AdMob के NativeExpressAd
को पहले से ही 'अब काम नहीं करता' के तौर पर मार्क कर दिया गया है. इसलिए, NativeExpressAd
को नए Google Mobile Ads C++ SDK टूल में शामिल नहीं किया गया है.
SDK टूल के नेमस्पेस में बदलाव
एसडीके टूल को नए नेमस्पेस में ले जाया गया है और इसका डायरेक्ट्री स्ट्रक्चर भी नया है:
नेमस्पेस firebase::gma
Google Mobile Ads C++ SDK के नए वर्शन के सोर्स, firebase::gma
नेमस्पेस में मौजूद हैं. Firebase AdMob C++ SDK के साथ-साथ, पुराने firebase::admob
नेमस्पेस का इस्तेमाल बंद कर दिया गया है.
डायरेक्ट्री का स्ट्रक्चर
हेडर फ़ाइलों को बिल्ड संग्रह के अंदर एक नई डायरेक्ट्री में ले जाया गया है:
Firebase AdMob C++ SDK टूल, अब काम नहीं करता | Google Mobile Ads C++ SDK का नया वर्शन |
---|---|
include/firebase/admob |
include/firebase/gma |
लाइब्रेरी
Firebase AdMob C++ SDK टूल, Firebase C++ SDK टूल के बिल्ड संग्रह में स्टैटिक लाइब्रेरी के तौर पर उपलब्ध कराया जाएगा:
iOS
Firebase AdMob C++ SDK टूल, अब काम नहीं करता | नया Google Mobile Ads C++ SDK |
---|---|
firebase_admob.xcframework |
firebase_gma.xcframework |
Android
रुका हुआ Firebase AdMob C++ SDK टूल | Google Mobile Ads C++ SDK का नया वर्शन |
---|---|
libfirebase_admob.a |
libfirebase_gma.a |
क्लास, एनम, और स्ट्रक्चर माइग्रेशन
यहां दी गई टेबल में उन क्लास, एनम, और स्ट्रक्चर की सूची दी गई है जिनमें बदलाव किया गया है या जिन्हें हटा दिया गया है. यहां इन अपडेट की खास जानकारी दी गई है:
BannerView
का नाम बदलकरAdView
कर दिया गया है.NativeAdExpressView
को हटा दिया गया है.RewardedVideo
नेमस्पेस कोRewardedAd
क्लास से बदल दिया गया है.PresentationState
एनोटेशन और लिसनर हटा दिए गए हैं औरAdListener
औरFullScreenContent
लिसनर से बदल दिए गए हैं.AdRequests
में, हर विज्ञापन के कॉन्फ़िगरेशन पैरामीटर के हिसाब से, ये पैरामीटर हटा दिए गए हैं:- टेस्ट डिवाइस आईडी का कॉन्फ़िगरेशन
- उम्र के हिसाब से विज्ञापन दिखाना
इसके बजाय, इन पैरामीटर को अब
RequestConfiguration
में कॉन्फ़िगर किया जा सकता है. यह एक ग्लोबल सेटिंग है, जिसका असर आने वाले समय में लोड होने वाले सभी विज्ञापनों पर पड़ेगा.
अब काम नहीं करता firebase::admob namespace |
नया firebase::gma namespace |
---|---|
AdSizeType (enum) |
AdSize::Type (enum) |
BannerView |
AdView |
BannerView::Listener |
AdListener AdViewBoundingBoxListener PaidEventListener |
BannerView::Position |
AdView::Position |
BannerView::PresentationState |
हटाया गया |
ChildDirectedTreatmentState |
RequestConfiguration::TagForChildDirectedTreatment |
Gender (enum) |
हटाया गया |
InterstitialAd::Listener |
FullScreenContentListener PaidEventListener |
KeyValuePair |
हटाया गया |
NativeExpressAdView |
हटाया गया |
PollableRewardListener |
हटाई गई |
RewardItem |
AdReward |
RewardedVideoAd (नेमस्पेस) |
RewardedAd (क्लास) |
RewardedVideoAd::Listener |
FullScreenContentListener PaidEventListener UserEarnedRewardListener |
AdMobError (enum) |
AdErrorCode (enum) |
RewardItem |
AdReward |
SDK टूल शुरू करना
Google Mobile Ads C++ SDK टूल के हर शुरुआती फ़ंक्शन से, तुरंत दो स्थिति सूचक दिखते हैं:
वैकल्पिक आउट पैरामीटर से पता चलता है कि शुरू करने की प्रोसेस शुरू होने से पहले, डिपेंडेंसी से जुड़ी कोई गड़बड़ी हुई थी या नहीं.
रिटर्न पैरामीटर,
firebase::Future
का रेफ़रंस है.Future
में, डिवाइस पर मीडिएशन एडेप्टर के असाइनॉन्स शुरू होने के नतीजे शामिल होते हैं.
Google Mobile Ads C++ SDK को, AdMob से दिखाए जाने वाले विज्ञापनों को लोड करने के लिए, शुरू करने वाले फ़ंक्शन के वापस आने के तुरंत बाद शुरू किया जा सकता है. हालांकि, अन्य विज्ञापन नेटवर्क तब तक विज्ञापन नहीं दिखाएंगे, जब तक कि उनका मीडिएशन अडैप्टर पूरी तरह से शुरू नहीं हो जाता. यह प्रोसेस, एसिंक्रोनस तरीके से होती है. इसलिए, अगर आपके ऐप्लिकेशन में विज्ञापन मीडिएशन का इस्तेमाल किया जा रहा है, तो हमारा सुझाव है कि आप कोई भी विज्ञापन लोड करने से पहले, Future
के ठीक होने का इंतज़ार करें.
इससे पहले
firebase::App* app = ::firebase::App::Create();
firebase::InitResult result = firebase::admob::Initialize(*app, kAdMobAppID);
if (result != kInitResultSuccess) {
// Initialization immediately failed, most likely due to a missing dependency.
// Check the device logs for more information.
return;
}
इसके बाद
using firebase::App;
using firebase::Future;
using firebase::gma::AdapterInitializationStatus;
App* app = ::firebase::App::Create();
firebase::InitResult result;
Future<AdapterInitializationStatus> future =
firebase::gma::Initialize(*app, &result);
if (result != kInitResultSuccess) {
// Initialization immediately failed, most likely due to a missing dependency.
// Check the device logs for more information.
return;
}
// Poll the future to wait for its completion either in this
// thread, or as part of your game loop by calling
// firebase::gma::InitializeLastResult();
while (future.status() == firebase::kFutureStatusPending) {
// Initialization on-going, continue to wait.
}
// future.status() is either kFutureStatusComplete or there’s an error
if (future.status() == firebase::kFutureStatusComplete &&
future.error() == firebase::gma::AdErrorCodeNone) {
AdapterInitializationStatus* status = future.result();
// Check status for any mediation adapters you wish to use.
// ..
} else {
// Handle initialization error.
}
AdView
के अंदर AdSize
में हुए बदलाव
AdSize
में अब सामान्य बैनर विज्ञापन साइज़ के स्टैटिक सदस्य शामिल हैं. साथ ही, यह AnchorAdaptive
और InlineAdaptive
विज्ञापन साइज़ के साथ काम करता है. इन साइज़ में, दी गई चौड़ाई और स्क्रीन के मौजूदा ओरिएंटेशन के आधार पर डाइनैमिक हाइट होती है.
AdSize में जोड़े गए स्टैटिक कॉन्सटेंट
firebase::gma::AdSize |
|
---|---|
AdSize::kBanner |
मोबाइल मार्केटिंग असोसिएशन (एमएमए) बैनर विज्ञापन का साइज़ (320x50 डेंसिटी-इंडिपेंडेंट पिक्सल) |
AdSize::kFullBanner |
Interactive Advertising Bureau (IAB) फ़ुल बैनर विज्ञापन का साइज़ (468x60 डेंसिटी-इंडिपेंडेंट पिक्सल) |
AdSize::kLargeBanner |
kBanner का लंबा वर्शन, आम तौर पर 320x100 |
AdSize::kLeaderboard |
Interactive Advertising Bureau (IAB) के मुताबिक लीडरबोर्ड विज्ञापन का साइज़ (728x90 डेंसिटी-इंडिपेंडेंट पिक्सल) |
AdSize::kMediumRectangle |
Interactive Advertising Bureau (IAB) का मीडियम रेक्टैंगल विज्ञापन साइज़ (300x250 डेंसिटी-इंडिपेंडेंट पिक्सल) |
firebase::gma::AdSize में स्टैटिक तरीके, ताकि
AdSize के इंस्टेंस बनाए जा सकें |
|
---|---|
GetLandscapeAnchoredAdaptiveBannerAdSize |
लैंडस्केप मोड में बैनर विज्ञापन बनाने के लिए, दी गई चौड़ाई और Google की ऑप्टिमाइज़ की गई ऊंचाई के साथ AdSize बनाता है |
GetPortraitAnchoredAdaptiveBannerAdSize |
यह फ़ंक्शन, दी गई चौड़ाई और Google की ऑप्टिमाइज़ की गई ऊंचाई के साथ AdSize बनाता है, ताकि पोर्ट्रेट मोड में बैनर विज्ञापन बनाया जा सके |
GetCurrentOrientationAnchoredAdaptiveBannerAdSize |
मौजूदा ओरिएंटेशन के हिसाब से बैनर विज्ञापन बनाने के लिए, दी गई चौड़ाई और Google की ऑप्टिमाइज़ की गई ऊंचाई के साथ AdSize बनाता है |
GetInlineAdaptiveBannerAdSize |
ज़्यादा से ज़्यादा ऊंचाई के हिसाब से, बैनर विज्ञापनों के लिए सबसे सही AdSize बनाता है
इस |
GetLandscapeInlineAdaptiveBannerAdSize |
यह विकल्प, दी गई चौड़ाई और डिवाइस की लैंडस्केप ऊंचाई के साथ
InlineAdaptive AdSize बनाता है |
GetPortraitInlineAdaptiveBannerAdSize |
दी गई चौड़ाई और डिवाइस की पोर्ट्रेट ऊंचाई के साथ, InlineAdaptive AdSize बनाता है. |
GetCurrentOrientationInlineAdaptiveBannerAdSize |
यह एक आसान तरीका है, जिसकी मदद से किसी खास चौड़ाई के मौजूदा इंटरफ़ेस ओरिएंटेशन के हिसाब से, InlineAdaptive
AdSize दिखाया जा सकता है. |
इससे पहले
firebase::admob::BannerView* banner_view = new firebase::admob::BannerView();
firebase::admob::AdSize ad_size;
ad_size.ad_size_type = firebase::admob::kAdSizeStandard;
ad_size.width = 320;
ad_size.height = 50;
// ad_parent is a reference to an iOS UIView or an Android Activity.
// banner_ad_unit is your ad unit id for banner ads.
banner_view->Initialize(ad_parent, banner_ad_unit, ad_size);
इसके बाद
firebase::gma::AdView* ad_view = new firebase::gma::AdView();
// ad_parent is a reference to an iOS UIView or an Android Activity.
// banner_ad_unit is your ad unit id for banner ads.
banner_view->Initialize(ad_parent, banner_ad_unit, firebase::gma::AdSize.kBanner);
AdRequest
और ग्लोबल कॉन्फ़िगरेशन
टेस्ट डिवाइस आईडी, TagForChildDirectedTreatment
, और TagForUnderAgeOfConsent
(पहले जन्मदिन के हिसाब से मैनेज किया जाता था) को AdRequest
से हटा दिया गया है. अब ये ग्लोबल RequestConfiguration
का हिस्सा हैं. ऐप्लिकेशन, इन वैल्यू को कॉन्फ़िगर करने के लिए, ऐप्लिकेशन के लाइफ़साइकल के शुरुआती दौर में firebase::gma::SetRequestConfiguration()
को शुरू कर सकते हैं. कॉन्फ़िगर होने के बाद, विज्ञापन लोड करने के सभी बाद के ऑपरेशन में इन सेटिंग का इस्तेमाल किया जाएगा.
firebase::gma::AdRequest
अब भी मौजूद है, क्योंकि यह विज्ञापन लोड करने के लिए कॉन्टेक्स्ट के हिसाब से जानकारी देता है. इसमें कीवर्ड और कॉन्टेंट का यूआरएल शामिल है. हालांकि, यूआरएल शामिल करना ज़रूरी नहीं है.
AdMob के AdRequest
C-style स्ट्रक्चर को, ऐसी क्लास से बदल दिया गया है जिसमें ऐसे तरीके हैं जो जानकारी की अलग-अलग सूचियों को तय करने और उनमें जानकारी जोड़ने के दौरान, उपयोगकर्ता को बेहतर अनुभव देते हैं.
AdRequest
में हुए अहम बदलाव यहां दिए गए हैं:
- एक्सट्रा अब मीडिएशन अडैप्टर क्लास के नाम से जुड़े हैं. AdMob सेवा को भेजे जाने वाले अतिरिक्त में, नीचे बताए गए तरीके के मुताबिक डिफ़ॉल्ट क्लास का नाम इस्तेमाल किया जाना चाहिए.
- विज्ञापन का अनुरोध करते समय, ऐप्लिकेशन उस कॉन्टेंट का यूआरएल पास कर सकते हैं जिसे वे दिखा रहे हैं. इससे कीवर्ड टारगेटिंग की सुविधा चालू हो जाती है, ताकि विज्ञापन को दिखाए जा रहे दूसरे कॉन्टेंट से मैच किया जा सके.
इससे पहले
firebase::admob::AdRequest request;
// Keywords to be used in targeting.
const char* keywords[] = {"GMA", "C++", "Fun"};
request.keyword_count = sizeof(keywords) / sizeof(keywords[0]);
request.keywords = keywords;
// "Extra" key value pairs.
static const firebase::admob::KeyValuePair extras[] = {
{"extra_name", "extra_value"}};
request.extras_count = sizeof(extras) / sizeof(extras[0]);
request.extras = kRequestExtras;
// Devices that should be served test ads.
const char* test_device_ids[] ={ "123", "4567", "890" };
request.test_device_id_count =
sizeof(test_device_ids) / sizeof(test_device_ids[0]);
request.test_device_ids = test_device_ids;
// Sample birthday to help determine the age of the user.
request.birthday_day = 10;
request.birthday_month = 11;
request.birthday_year = 1975;
// Load Ad with the AdRequest.
इसके बाद
// Do once after Google Mobile Ads C++ SDK initialization.
// These settings will affect all Ad Load operations.
firebase::gma::RequestConfiguration configuration;
configuration.max_ad_content_rating =
firebase::gma::RequestConfiguration::kMaxAdContentRatingPG;
configuration.tag_for_child_directed_treatment =
firebase::gma::RequestConfiguration::kChildDirectedTreatmentTrue;
configuration.tag_for_under_age_of_consent =
firebase::gma::RequestConfiguration::kUnderAgeOfConsentFalse;
configuration.test_device_ids.push_back("1234");
configuration.test_device_ids.push_back("4567");
configuration.test_device_ids.push_back("890");
firebase::gma::SetRequestConfiguration(configuration);
// Then, more information must be provided via an AdRequest when
// loading individual ads.
firebase::gma::AdRequest ad_request;
// "Extra" key value pairs.
ad_request.add_keyword("GMA");
ad_request.add_keyword("C++");
ad_request.add_keyword("Fun");
// Content URL.
ad_request.set_content_url("www.example.com");
// Mediation Adapter Extras.
#if defined(Android)
const char* ad_network_extras_class_name =
"com/google/ads/mediation/admob/AdMobAdapter";
#else // iOS
const char* ad_network_extras_class_name = "GADExtras";
#endif
ad_request.add_extra(ad_network_extras_class_name, "extra_name", "extra_value");
// Load Ad with the AdRequest. See next section.
AdResults
LoadAd
अब ऐसा Future
रिटर्न करता है जिसमें सभी AdView
, InterstitialAd
, और RewardedAd
विज्ञापन के टाइप के लिए एक AdResult
ऑब्जेक्ट होता है. अगर विज्ञापन अनुरोध पूरा हो जाता है, तो AdResult::is_successful
तरीका true
दिखाता है. अगर अनुरोध पूरा नहीं होता है, तो false
दिखाता है.
गड़बड़ी होने पर, AdResult
में AdError
ऑब्जेक्ट होता है. इसमें समस्या के बारे में सेवा-लेवल की जानकारी होती है. इसमें गड़बड़ी का कोड, गड़बड़ी का मैसेज, और डोमेन स्ट्रिंग शामिल होती हैं.
इससे पहले
firebase::Future<AdResult> future;
void load_ad() {
// Assume an already created AdRequest object.
future = ad_view->LoadAd(ad_request);
}
void your_game_loop() {
if (future.status() == firebase::kFutureStatusComplete) {
if(future.error() != firebase::admob::kAdMobErrorNone) {
// There was either an internal SDK issue that caused the Future to
// fail its completion, or AdMob failed to fulfill the ad request.
// Details are unknown other than the Future’s error code returned
// from future.error().
} else {
// The ad loaded successfully.
}
}
}
इसके बाद
firebase::Future<AdResult> future;
void load_ad() {
// Assumes a previously created AdRequest object.
// See "AdRequest and Global Configuration" above.
future = ad_view->LoadAd(ad_request);
}
void your_game_loop() {
// Check the future status in your game loop:
if (future.status() == firebase::kFutureStatusComplete) {
if(future.error() != firebase::admob::kAdErrorCodeNone) {
// There was an internal SDK issue that caused the Future to fail.
} else {
// Future completed successfully. Check the GMA result.
const AdResult* ad_result = future.result();
if ( ad_result->is_successful() != true ) {
// GMA failed to serve an ad. Gather information about the error.
const AdError& ad_error = ad_result->ad_error();
AdErrorCode error_code = ad_error.code();
const std::string error_domain = ad_error.domain();
const std::string error_message = ad_error.message();
} else {
// The ad loaded successfully.
}
}
}
}
AdView
में AdListener
इवेंट
AdMob की BannerView::Listener
क्लास को Google Mobile Ads C++ SDK में, दो अलग-अलग Listener क्लास से बदल दिया गया है:
AdListener
, विज्ञापन के लाइफ़साइकल और उपयोगकर्ता के इंटरैक्शन के इवेंट को ट्रैक करता है.AdView
का साइज़ बदलने या किसी दूसरी जगह पर ले जाने पर,AdViewBoundingBoxListener
शुरू हो जाता है.
AdMob OnPresentationStateChanged
कॉलबैक Google Mobile Ads मैपिंग
firebase::admob::BannerView::PresentationState
एनोटेट किए गए टाइप और
OnPresentationStateChanged
लिसनर का तरीका, नए Google Mobile Ads C++ SDK में शामिल नहीं है.
AdView
के लाइफ़ साइकल में, प्रज़ेंटेशन की स्थिति में होने वाले बदलावों का पता लगाने के लिए, यहां दिए गए अन्य तरीके अपनाए जा सकते हैं:
firebase::admob::BannerView::Listener
OnPresentationStateChanged इवेंट |
firebase::gma::AdListener counterpart |
---|---|
kPresentationStateHidden |
जब AdListener::OnAdClosed को शुरू किया जाता है या जब
AdView::Hide() अपने असाइनॉन्स के साथ काम करना पूरी तरह से बंद कर देता है
|
kPresentationStateVisibleWithoutAd |
कोई नहीं. AdView::Show() को बिना लोड किए
AdView को लागू करने की कोशिश करने पर गड़बड़ी होगी. |
kPresentationStateVisibleWithAd |
जब AdListener::OnAdOpened शुरू होता है या जब
AdView::Show() किसी विज्ञापन के साथ अपना एसिंक्रोनस
ऑपरेशन पूरा करता है |
kPresentationStateOpenedPartialOverlay |
AdListener::OnAdOpened() को शुरू करने के बाद, बाउंडिंग बॉक्स के बारे में क्वेरी करें, ताकि दिखाए जा रहे विज्ञापन का साइज़ और जगह तय की जा सके.
इसके अलावा, AdView की पोज़िशन और
AdSize के बारे में क्वेरी करें और/या
AdViewBoundingBoxListener की मदद से बाउंडिंग बॉक्स को मॉनिटर करें. |
kPresentationStateCoveringUI |
kPresentationStateOpenedPartialOverlay के लिए ऊपर दी गई जानकारी देखें |
RewardedAd
अब एक क्लास है
अब काम न करने वाले Firebase AdMob C++ SDK टूल की मदद से, firebase::admob::rewarded_ad
नेमस्पेस में मौजूद फ़ंक्शन के कलेक्शन की मदद से इनाम वाले विज्ञापन दिखाए जा सकते थे. इन फ़ंक्शन को एक नई RewardedAd
क्लास में जोड़ दिया गया है. यह क्लास, InterstitialAd
के मिलते-जुलते एपीआई प्लैटफ़ॉर्म पर विज्ञापन दिखाती है. ज़्यादा जानकारी के लिए अगला सेक्शन देखें.
InterstitialAd
और RewardedAd
लिसनर
पेज पर अचानक दिखने वाले विज्ञापन और इनाम वाले विज्ञापन, दोनों को फ़ुल स्क्रीन विज्ञापन माना जाता है. इन विज्ञापन टाइप के लिए, विज्ञापन के लाइफ़ साइकल से जुड़े इवेंट को सुनने के लिए, एक नया FullScreenContentListener
इंस्टॉल किया जा सकता है. साथ ही, AdMob सेवा के पैसे चुकाकर दिखाए जाने वाले इवेंट होने का पता चलने पर, उसे ट्रैक करने के लिए एक अलग PaidEventListener
इंस्टॉल किया जा सकता है.
RewardedAd
में, उपयोगकर्ता को मिले इनाम वाले इवेंट को मॉनिटर करने के लिए एक और लिसनर होता है.
फ़ुल स्क्रीन विज्ञापन के लिए कॉलबैक के नए तरीके
FullScreenContentListener तरीके |
PaidEventListener तरीके |
UserEarnedRewardListener तरीके |
---|---|---|
OnAdClicked |
OnPaidEvent |
OnUserEarnedReward |
OnAdDismissedFullScreenContent |
||
OnAdFailedToShowFullScreenContent |
||
OnAdImpression |
||
OnAdShowedFullScreenContent |
तरीके बदले गए/हटाए गए/बदले गए
नीचे दी गई टेबल में, Google Mobile Ads C++ SDK टूल के नए वर्शन में बदले गए तरीकों की सूची दी गई है. पैरामीटर वाले तरीके मौजूद रहते हैं, लेकिन उनके साइग्नेचर बदल जाते हैं.
क्लास | Firebase AdMob C++ SDK API | Google मोबाइल विज्ञापन C++ SDK टूल एपीआई | नोट |
---|---|---|---|
BannerView
|
MoveTo
|
AdView::SetPosition
|
|
presentation_state
|
हटाया गया | इसे AdViewListener इवेंट और
AdView::Show और AdView::Hide के आने वाले नतीजों से मैनेज किया जाता है.
|
|
SetListener
|
AdView::SetAdListener AdView::SetBoundingBoxListener AdView::SetPaidEventListener |
नए लिसनर डिज़ाइन की मदद से, AdView लाइफ़साइकल इवेंट का पता ज़्यादा सटीक तरीके से लगाया जा सकता है.
|
|
Listener::OnPresentationStateChanged
|
हटाया गया | ऊपर BannerView::SetListener देखें.
|
|
Listener::OnBoundingBoxChanged
|
AdViewBoundingBoxListener::OnBoundingBoxChanged
|
||
मध्यवर्ती विज्ञापन | Initialize(AdParent parent, const char* ad_unit_id)
|
Initialize(AdParent parent)
|
ad_unit_id पैरामीटर अब
LoadAd कार्रवाई का हिस्सा है.
|
LoadAd(const AdRequest& request)
|
LoadAd(const char* ad_unit_id, const AdRequest& request)
|
||
presentation_state
|
हटाया गया | presentation_state एनोटेशन हटा दिया गया है. FullScreenContentListener
का इस्तेमाल करें.
|
|
SetListener
|
SetFullScreenContentListener SetPaidEventListener
|
||
Destroy
|
हटाई गई | संसाधनों को साफ़ करना अब RewardedAd
को खत्म करने का हिस्सा है.
|
|
RewardedAd (आम तौर पर RewardedVideoAd )
|
Initialize
|
Initialize(AdParent parent)
|
AdParent को पहले Show को पास किया जाता था, लेकिन अब इसे
शुरू करने की प्रोसेस का हिस्सा माना जाता है.
|
presentation_state
|
हटाया गया | presentation_state एनोटेशन हटा दिया गया है. FullScreenContentListener
का इस्तेमाल करें.
|
|
SetListener
|
SetFullScreenContentListener SetPaidEventListener
Show
|
UserEarnedReward दर्शक को तब भी दिखाया जाता है, जब
RewardedAd दिखाया जाता है. नीचे देखें.
|
|
Show(AdParent parent)
|
Show(UserEarnedRewardListener* listener)
|