নতুন Google মোবাইল বিজ্ঞাপন C++ SDK-এ স্থানান্তর করুন


Firebase C++ SDK v9.1.0 প্রকাশের মাধ্যমে একটি নতুন Google মোবাইল বিজ্ঞাপন C++ SDK চালু করা হয়েছে।

Google Mobile Ads C++ SDK হল একটি নতুন API সারফেস যা ২০২১ এবং ২০২২ সালে iOS এবং Android এর জন্য Firebase AdMob C++ SDK তে করা প্রধান পরিবর্তনগুলিকে অন্তর্ভুক্ত করে, যার মধ্যে রয়েছে বন্ধ করা API গুলি অপসারণ এবং পূর্ণ স্ক্রিন বিজ্ঞাপনের ধরণগুলির সাথে কাজ করার সময় একটি নতুন প্রবাহ।

পুরাতন Firebase AdMob C++ SDK ( firebase::admob ) কে অপ্রচলিত হিসেবে চিহ্নিত করা হয়েছে এবং ভবিষ্যতে কোনও আপডেট বা বাগ সংশোধন করা হবে না।

নতুন Google মোবাইল বিজ্ঞাপন C++ SDK ( firebase::gma ) এবং পুরাতন Firebase AdMob C++ SDK ( firebase::admob ) উভয়ই Firebase AdMob C++ SDK-এর জন্য বিল্ড আর্কাইভের অংশ থাকবে Firebase AdMob C++ SDK অবচয় উইন্ডো চলাকালীন।

লিগ্যাসি এপিআই অপসারণ

নিম্নলিখিত API গুলি Google Mobile Ads C++ SDK থেকে সম্পূর্ণরূপে সরিয়ে ফেলা হয়েছে।

RewardedVideoAd

AdMob-এর RewardedVideoAd নেমস্পেস RewardedAd ক্লাস দিয়ে প্রতিস্থাপিত হয়েছে। RewardedAd InterstitialAd এর মতোই আচরণ করে কিন্তু আইটেম পুরষ্কারের বিজ্ঞপ্তি পাওয়ার জন্য একটি অতিরিক্ত RewardedAdListener অন্তর্ভুক্ত করে।

NativeExpressAds

AdMob-এর NativeExpressAd ইতিমধ্যেই প্রতিটি Firebase AdMob C++ SDK-তে অপ্রচলিত হিসেবে চিহ্নিত করা হয়েছে। তাই NativeExpressAd নতুন Google মোবাইল বিজ্ঞাপন C++ SDK-তে অন্তর্ভুক্ত নয়।

SDK নেমস্পেস পরিবর্তন

SDK একটি নতুন নেমস্পেসে স্থানান্তরিত হয়েছে, এবং এর একটি নতুন ডিরেক্টরি কাঠামো রয়েছে:

নেমস্পেস firebase::gma

নতুন Google মোবাইল বিজ্ঞাপন C++ SDK-এর উৎসগুলি firebase::gma namespace-এ রয়েছে। Firebase AdMob C++ SDK-এর সাথে পুরাতন firebase::admob namespaceটিও বাতিল করা হয়েছে।

ডিরেক্টরি কাঠামো

হেডার ফাইলগুলি বিল্ড আর্কাইভের ভিতরে একটি নতুন ডিরেক্টরিতে স্থানান্তরিত হয়েছে:

অপ্রচলিত Firebase AdMob C++ SDK নতুন গুগল মোবাইল বিজ্ঞাপন সি++ এসডিকে
include/firebase/admob include/firebase/gma

লাইব্রেরি

Firebase AdMob C++ SDK Firebase C++ SDK বিল্ড আর্কাইভের মধ্যে একটি স্ট্যাটিক লাইব্রেরি হিসেবে সরবরাহ করা হবে:

আইওএস

অপ্রচলিত Firebase AdMob C++ SDK নতুন গুগল মোবাইল বিজ্ঞাপন সি++ এসডিকে
firebase_admob.xcframework firebase_gma.xcframework

অ্যান্ড্রয়েড

অপ্রচলিত Firebase AdMob 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 (জন্ম) সরানো হয়েছে
InterstitialAd::Listener FullScreenContentListener
PaidEventListener
KeyValuePair সরানো হয়েছে
NativeExpressAdView সরানো হয়েছে
PollableRewardListener সরানো হয়েছে
RewardItem AdReward
RewardedVideoAd (নামস্থান) RewardedAd (শ্রেণী)
RewardedVideoAd::Listener FullScreenContentListener
PaidEventListener
UserEarnedRewardListener
AdMobError (এনাম) AdErrorCode (এনাম)
RewardItem AdReward

SDK আরম্ভকরণ

প্রতিটি গুগল মোবাইল বিজ্ঞাপন C++ SDK ইনিশিয়ালাইজেশন ফাংশন অবিলম্বে দুটি স্ট্যাটাস ইন্ডিকেটর ফেরত দেয়:

  • একটি ঐচ্ছিক আউট প্যারামিটার ইঙ্গিত দেয় যে প্রাথমিককরণ প্রক্রিয়া শুরু হওয়ার আগে কোনও নির্ভরতা ত্রুটি ঘটেছে কিনা।

  • রিটার্ন প্যারামিটারটি একটি firebase::Future এর রেফারেন্স। Future ডিভাইসের মেডিটেশন অ্যাডাপ্টারের অ্যাসিঙ্ক্রোনাস ইনিশিয়ালাইজেশনের ফলাফল থাকে।

ইনিশিয়ালাইজেশন ফাংশনটি ফিরে আসার সাথে সাথেই AdMob পরিবেশিত বিজ্ঞাপনগুলি লোড করার জন্য Google Mobile Ads C++ SDK ব্যবহার করা যেতে পারে, তবে অন্যান্য বিজ্ঞাপন নেটওয়ার্কগুলি তাদের সংশ্লিষ্ট মেডেশন অ্যাডাপ্টার সম্পূর্ণরূপে শুরু না হওয়া পর্যন্ত বিজ্ঞাপন পরিবেশন করবে না। এই প্রক্রিয়াটি অ্যাসিঙ্ক্রোনাসভাবে ঘটে। অতএব, আপনি যদি আপনার অ্যাপ্লিকেশনে বিজ্ঞাপন মেডেশন ব্যবহার করেন, তাহলে আমরা আপনাকে কোনও বিজ্ঞাপন লোড করার চেষ্টা করার আগে 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 বিজ্ঞাপনের আকারগুলিকে সমর্থন করে যার প্রদত্ত প্রস্থ এবং স্ক্রিনের বর্তমান ওরিয়েন্টেশনের উপর ভিত্তি করে একটি গতিশীল উচ্চতা রয়েছে।

firebase::gma::AdSize এ স্ট্যাটিক AdSize ধ্রুবক যোগ করা হয়েছে

AdSize::kBanner

মোবাইল মার্কেটিং অ্যাসোসিয়েশন (MMA) ব্যানার বিজ্ঞাপনের আকার (৩২০x৫০ ঘনত্ব-স্বাধীন পিক্সেল)

AdSize::kFullBanner

ইন্টারেক্টিভ অ্যাডভারটাইজিং ব্যুরো (IAB) এর পূর্ণ ব্যানার বিজ্ঞাপনের আকার (৪৬৮x৬০ ঘনত্ব-স্বাধীন পিক্সেল)
AdSize::kLargeBanner kBanner এর লম্বা সংস্করণ, সাধারণত 320x100

AdSize::kLeaderboard

ইন্টারেক্টিভ অ্যাডভারটাইজিং ব্যুরো (IAB) লিডারবোর্ড বিজ্ঞাপনের আকার (৭২৮x৯০ ঘনত্ব-স্বাধীন পিক্সেল)
AdSize::kMediumRectangle ইন্টারেক্টিভ অ্যাডভারটাইজিং ব্যুরো (IAB) মাঝারি আয়তক্ষেত্রাকার বিজ্ঞাপনের আকার (300x250 ঘনত্ব-স্বাধীন পিক্সেল)
AdSize এর দৃষ্টান্ত তৈরিতে সাহায্য করার জন্য firebase::gma::AdSize এ স্ট্যাটিক পদ্ধতি
GetLandscapeAnchoredAdaptiveBannerAdSize ল্যান্ডস্কেপ মোডে একটি ব্যানার বিজ্ঞাপন তৈরি করতে প্রদত্ত প্রস্থ এবং গুগল-অপ্টিমাইজড উচ্চতা সহ একটি AdSize তৈরি করে।
GetPortraitAnchoredAdaptiveBannerAdSize পোর্ট্রেট মোডে একটি ব্যানার বিজ্ঞাপন তৈরি করতে প্রদত্ত প্রস্থ এবং গুগল-অপ্টিমাইজড উচ্চতা সহ একটি AdSize তৈরি করে।
GetCurrentOrientationAnchoredAdaptiveBannerAdSize বর্তমান ওরিয়েন্টেশন অনুসারে একটি ব্যানার বিজ্ঞাপন তৈরি করতে প্রদত্ত প্রস্থ এবং গুগল-অপ্টিমাইজড উচ্চতা সহ একটি AdSize তৈরি করে।
GetInlineAdaptiveBannerAdSize সর্বোচ্চ উচ্চতা প্রদান করে ব্যানার বিজ্ঞাপনের জন্য সবচেয়ে উপযুক্ত একটি AdSize তৈরি করে

এই 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 এখনও বিদ্যমান কারণ এটি বিজ্ঞাপন লোড করার জন্য প্রাসঙ্গিক তথ্য প্রদান করে, যার মধ্যে কীওয়ার্ড এবং একটি ঐচ্ছিক কন্টেন্ট URL অন্তর্ভুক্ত রয়েছে।

AdMob-এর AdRequest C-স্টাইল স্ট্রাক্টকে এমন একটি ক্লাস দিয়ে প্রতিস্থাপন করা হয়েছে যেখানে পদ্ধতিগুলি বিভিন্ন তথ্যের তালিকা সংজ্ঞায়িত এবং সংযোজন করার সময় আরও ভাল ব্যবহারকারীর অভিজ্ঞতা প্রদান করে।

এখানে উল্লেখযোগ্য AdRequest পরিবর্তনগুলি রয়েছে:

  • অতিরিক্তগুলি এখন একটি মধ্যস্থতা অ্যাডাপ্টার ক্লাস নামের সাথে যুক্ত। AdMob পরিষেবাতে পাঠানো অতিরিক্তগুলি নীচে সংজ্ঞায়িত ডিফল্ট ক্লাস নাম ব্যবহার করা উচিত।
  • কোনও বিজ্ঞাপনের অনুরোধ করার সময়, অ্যাপগুলি তাদের পরিবেশিত সামগ্রীর একটি URL পাঠাতে পারে। এটি কীওয়ার্ড টার্গেটিংকে প্রদর্শিত অন্যান্য সামগ্রীর সাথে বিজ্ঞাপনের সাথে মেলাতে সক্ষম করে।

আগে

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 এখন সকল AdView , InterstitialAd , এবং RewardedAd বিজ্ঞাপন প্রকারের জন্য একটি AdResult অবজেক্ট সম্বলিত একটি Future প্রদান করে। 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 ইভেন্ট

গুগল মোবাইল বিজ্ঞাপন C++ SDK-তে AdMob-এর BannerView::Listener ক্লাস দুটি স্বতন্ত্র Lisner ক্লাস দিয়ে প্রতিস্থাপিত হয়েছে:

  • AdListener বিজ্ঞাপনের জীবনচক্র এবং ব্যবহারকারীর মিথস্ক্রিয়া ইভেন্টগুলি ট্র্যাক করে।
  • AdView আকার পরিবর্তন বা স্থানান্তর করা হলে AdViewBoundingBoxListener ব্যবহার করা হয়।

AdMob OnPresentationStateChanged কলব্যাক Google Mobile Ads ম্যাপিং

নতুন Google মোবাইল বিজ্ঞাপন C++ SDK-তে firebase::admob::BannerView::PresentationState গণনাকৃত ধরণ এবং OnPresentationStateChanged শ্রোতা পদ্ধতি অন্তর্ভুক্ত নয়।

একটি AdView এর জীবনচক্রের উপস্থাপনা অবস্থার পরিবর্তন সনাক্ত করার বিকল্প উপায়গুলি নিম্নরূপ:

firebase::admob::BannerView::Listener OnPresentationStateChanged ইভেন্ট firebase::gma::AdListener প্রতিরূপ
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 এর অনুরূপ API পৃষ্ঠ সহ বিজ্ঞাপন পরিবেশন করে (পরবর্তী বিভাগটি দেখুন)।

InterstitialAd এবং RewardedAd শ্রোতারা

ইন্টারস্টিশিয়াল বিজ্ঞাপন এবং পুরস্কৃত বিজ্ঞাপন উভয়কেই পূর্ণ স্ক্রিন বিজ্ঞাপন হিসেবে বিবেচনা করা হয়। এই ধরণের বিজ্ঞাপনের জন্য বিজ্ঞাপনের জীবনচক্র ইভেন্টগুলি শোনার জন্য একটি নতুন FullScreenContentListener ইনস্টল করা যেতে পারে এবং AdMob পরিষেবা কখন একটি পেইড ইভেন্ট ঘটেছে বলে মনে করে তা ট্র্যাক করার জন্য একটি পৃথক PaidEventListener ইনস্টল করা যেতে পারে।

ব্যবহারকারী-অর্জিত পুরষ্কার ইভেন্টগুলি পর্যবেক্ষণ করার জন্য RewardedAd একটি অতিরিক্ত শ্রোতা রয়েছে।

নতুন পূর্ণ স্ক্রিন বিজ্ঞাপন কলব্যাক পদ্ধতি

FullScreenContentListener পদ্ধতি PaidEventListener পদ্ধতি UserEarnedRewardListener পদ্ধতি
OnAdClicked OnPaidEvent OnUserEarnedReward
OnAdDismissedFullScreenContent
OnAdFailedToShowFullScreenContent
OnAdImpression
OnAdShowedFullScreenContent

পদ্ধতি পরিবর্তন/অপসারণ/প্রতিস্থাপন করা হয়েছে

নিচের টেবিলে নতুন Google মোবাইল বিজ্ঞাপন C++ SDK-তে পরিবর্তিত নির্দিষ্ট পদ্ধতিগুলির তালিকা দেওয়া হয়েছে। তালিকাভুক্ত প্যারামিটার সহ পদ্ধতিগুলি রয়ে গেছে কিন্তু তাদের স্বাক্ষর পরিবর্তিত হয়েছে।

শ্রেণী ফায়ারবেস অ্যাডমব সি++ এসডিকে এপিআই গুগল মোবাইল বিজ্ঞাপন C++ SDK API মন্তব্য
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
RewardedAd দেখানোর সময় UserEarnedReward শ্রোতাকেও সংজ্ঞায়িত করা হয়। নিচে দেখুন।
Show(AdParent parent) Show(UserEarnedRewardListener* listener)