नए Google Mobile Ads C++ SDK टूल पर माइग्रेट करें


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 बनाता है

इस AdSize की मदद से, Google सर्वर सबसे सही विज्ञापन साइज़ चुन सकते हैं. यह साइज़, तय की गई ज़्यादा से ज़्यादा ऊंचाई से कम या उसके बराबर होनी चाहिए.

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)