SDK ভার্সন মাইগ্রেট করা

প্ল্যাটফর্ম বেছে নিন: iOS Unity Android (Legacy)

এই পৃষ্ঠায় বর্তমান ও আগের ভার্সনের মাইগ্রেশন সম্পর্কে বলা আছে।

v24 থেকে v25-এ মাইগ্রেট করা

Google Mobile Ads SDK (Legacy)-এর মেজর ভার্সন ২৪ ও ২৫-এর মধ্যে ব্রেকিং পরিবর্তন ও আচরণগত পার্থক্য নিচের উপবিভাগে বর্ণনা করা হয়েছে।

Android API লেভেল কমপক্ষে ২৪ হতে হবে

ভার্সন 25.5.0 থেকে শুরু করে, Google Mobile Ads SDK (Legacy)-এর জন্য সমস্ত অ্যাপকে ন্যূনতম Android API লেভেল 24-এ রান করতে হবে। API লেভেল অ্যাডজাস্ট করতে, আপনার অ্যাপ-লেভেল build.gradle ফাইলে থাকা minSdk ভ্যালু পরিবর্তন করে ২৪ বা তার বেশি করুন।

বন্ধ হয়ে যাওয়া বিজ্ঞাপন কলব্যাক সরানো হয়েছে

নিম্নলিখিত ক্লাস থেকে নিম্নলিখিত পুরনো বিজ্ঞাপন কলব্যাক সরিয়ে দেওয়া হয়েছে:

শ্রেণী কলব্যাক সরানো হয়েছে পরিবর্ত
SignalCallbacks onFailure(String)
onAdFailedToShow(String)
onFailure(AdError)
onAdFailedToShow(AdError)
MediationAdLoadCallback
MediationInterstitialAdCallback
MediationRewardedAdCallback

অ্যাঙ্কর করা অ্যাডাপ্টিভ ব্যানারের সাইজ API-তে পরিবর্তন

ভার্সন 25.0.0 আগে থেকে থাকা অ্যাঙ্কর করা অ্যাডাপ্টিভ ব্যানার সাইজ API সরিয়ে দেয় এবং বড় অ্যাঙ্কর করা অ্যাডাপ্টিভ ব্যানার বিজ্ঞাপনের জন্য সাইজ API নিয়ে আসে। Google Mobile Ads SDK (Legacy) নতুন বড় অ্যাঙ্কর করা অ্যাডাপ্টিভ ব্যানারের সাইজ API ব্যবহার করে ব্যানারে ভিডিও ডিমান্ড পরিবেশন করতে পারে।

নিচের সারণীতে বাতিল করা সাইজিং API ও তার পরিবর্তে ব্যবহার করা API-এর বিবরণ দেওয়া হল:

v24 (বন্ধ করা হয়েছে) v25 (Replacement)
getCurrentOrientationAnchoredAdaptiveBannerAdSize(Context, int) getLargeAnchoredAdaptiveBannerAdSize(Context, int)
getLandscapeAnchoredAdaptiveBannerAdSize(Context, int) getLargeLandscapeAnchoredAdaptiveBannerAdSize(Context, int)
getPortraitAnchoredAdaptiveBannerAdSize(Context context, int width) getLargePortraitAnchoredAdaptiveBannerAdSize(Context context, int width)

mediation.VersionInfo ক্লাস সরানো

com.google.android.gms.ads.mediation প্যাকেজে থাকা VersionInfo ক্লাসটি সরিয়ে দেওয়া হয়েছে। পরিবর্তে, com.google.android.gms.ads.VersionInfo প্যাকেজ ব্যবহার করুন।

RtbSignalData ক্লাসে getConfiguration() পদ্ধতি সরানো

RtbSignalData-এ বন্ধ করে দেওয়া getConfiguration() API সরিয়ে দেওয়া হয়েছে। পরিবর্তে, getConfigurations() পদ্ধতি ব্যবহার করুন, যা একটি List<MediationConfiguration> তালিকা রিটার্ন করে।

v23 থেকে v24-এ মাইগ্রেট করা

Google Mobile Ads SDK (Legacy)-এর মেজর ভার্সন ২৩ ও ২৪-এর মধ্যে ব্রেকিং পরিবর্তন ও আচরণগত পার্থক্য নিচের উপবিভাগে বর্ণনা করা হয়েছে।

ন্যূনতম Android API লেভেল হল ২৩

24.0.0 ভার্সন থেকে শুরু করে, Google Mobile Ads SDK (Legacy)-এর জন্য সমস্ত অ্যাপকে ন্যূনতম Android API লেভেল 23-এ রান করতে হবে। API লেভেল অ্যাডজাস্ট করতে, আপনার অ্যাপ-লেভেল build.gradle ফাইলে থাকা minSdk ভ্যালু পরিবর্তন করে ২৩ বা তার বেশি করুন।

অপ্টিমাইজ করা ইনিশিয়ালাইজেশন ও লোডিংয়ে পরিবর্তন

সাধারণত, OPTIMIZE_INITIALIZATION ও OPTIMIZE_AD_LOADING ফ্ল্যাগ true হিসেবে সেট করা থাকে। এইসব ফ্ল্যাগ সম্পর্কে আরও জানতে, ইনিশিয়ালাইজেশন ও লোডিং অপ্টিমাইজ করুন দেখুন।

firebase-ads ও firebase-ads-lite ডিপেন্ডেন্সি সরিয়ে দেওয়া হয়েছে

SDK-এর ভার্সন 24.0.0 থেকে, SDK রিলিজ আর firebase-ads এবং firebase-ads-lite ডিপেন্ডেন্সি ডিস্ট্রিবিউট করে না। এর পরিবর্তে play-services-ads নির্ভরতা ব্যবহার করুন।

কাস্টম টার্গেটিং প্যারামিটার সেট করা

বিজ্ঞাপন অনুরোধে কাস্টম টার্গেটিং সেট করতে, addCustomTargeting() ব্যবহার করুন।

অ্যাপ খোলার সঙ্গে সঙ্গে দেখা যায় এমন বিজ্ঞাপনের জন্য বন্ধ হয়ে যাওয়া ওরিয়েন্টেশন API সরিয়ে দেওয়া হয়েছে

  • AppOpenAd.load() ওরিয়েন্টেশন ইনপুট প্যারামিটার গ্রহণ করে এমন পদ্ধতি সরানো হয়েছে। এর পরিবর্তে, AppOpenAd.load() পদ্ধতি ব্যবহার করুন যেগুলি কোনও ওরিয়েন্টেশন নেয় না।
  • AppOpenAdOrientation enum সরানো হয়েছে।

মধ্যস্থতা অ্যাডাপ্টরের জন্য পুরস্কারের সরলীকৃত কলব্যাক

ভার্সন 24.0.0-এ onUserEarnedReward() callback in MediationRewardedAdCallback যোগ করা হয়েছে এবং onUserEarnedReward(RewardItem) বাতিল করা হয়েছে। ব্যবহারকারী পুরস্কার পাওয়ার সাথে সাথেই মিডিয়েশন অ্যাডাপ্টারকে onUserEarnedReward() কল করতে হবে।

মিডিয়েশন অ্যাডাপ্টার থেকে কলব্যাক ফরওয়ার্ড করার সময়, সব Google Mobile Ads SDK (Legacy) ভার্সন Ad Manager UI-তে OnUserEarnedRewardListener সংজ্ঞায়িত পুরস্কার ফেরত দেয়।

ক্লাস সরিয়ে দেওয়া হয়েছে

নিম্নলিখিত ক্লাসগুলি সরিয়ে দেওয়া হয়েছে এবং সেগুলি আর রিপ্লেস করা হয়নি:

  • DynamicHeightSearchAdRequest
  • SearchAdRequest
  • SearchAdView

সরিয়ে দেওয়া পদ্ধতি

নিম্নলিখিত পদ্ধতিগুলি কোনও বিকল্প ছাড়াই সরানো হয়েছে:

শ্রেণী পদ্ধতি
RewardedInterstitialAdLoadCallback onRewardedInterstitialAdLoaded()
onRewardedInterstitialAdFailedToLoad(int)
onRewardedInterstitialAdFailedToLoad(LoadAdError)

বন্ধ করে দেওয়া পদ্ধতি

নিম্নলিখিত পদ্ধতিগুলি অবচিত করা হয়েছে এবং এর কোনও বিকল্প নেই:

শ্রেণী পদ্ধতি
অ্যাডাপ্টার loadInterscrollerAd()
RtbAdapter loadRtbInterscrollerAd()

v22 থেকে v23-এ মাইগ্রেট করা

Google Mobile Ads SDK (Legacy)-এর মেজর ভার্সন ২২ ও ২৩-এর মধ্যে ব্রেকিং পরিবর্তন ও আচরণগত পার্থক্য নিচের উপবিভাগে বর্ণনা করা হয়েছে।

ন্যূনতম Android API লেভেল হল ২১

23.0.0 ভার্সন থেকে শুরু করে, Google Mobile Ads SDK (Legacy) চালানোর জন্য সব অ্যাপকে ন্যূনতম Android API লেভেল 21 হতে হবে। API লেভেল অ্যাডজাস্ট করতে, আপনার অ্যাপ-লেভেল build.gradle ফাইলে minSdkVersion-এর ভ্যালু পরিবর্তন করে 21 বা তার বেশি করুন।

AdManagerAdRequest.Builder সুপারক্লাস থেকে প্রাপ্ত পদ্ধতি চেইন করা যেতে পারে

23.0.0 ভার্সনে, AdManagerAdRequest.Builder এর পেরেন্ট থেকে পাওয়া মেথডগুলিকে একসাথে চেইন করে একটি AdManagerAdRequest তৈরি করা যায়, এর জন্য একটি কলই যথেষ্ট:

Java

AdManagerAdRequest request = new AdManagerAdRequest.Builder()
    .addCustomTargeting("age", "25") // AdManagerAdRequest.Builder method.
    .setContentUrl("https://www.example.com") // Method inherited from parent.
    .build(); // Builds an AdManagerAdRequest.

Kotlin

var request = AdManagerAdRequest.Builder()
  .addCustomTargeting("age", "25") // AdManagerAdRequest.Builder method.
  .setContentUrl("https://www.example.com") // Method inherited from parent.
  .build() // Builds an AdManagerAdRequest.

সাপোর্ট করা হয় না এমন মেথড সরানো/পরিবর্তন করা হয়েছে

v22.0.0 API v23.0.0 API
AdRequest.Builder.addTestDevice() RequestConfiguration.Builder.setTestDeviceIds()
AdRequest.Builder.tagForChildDirectedTreatment() RequestConfiguration.Builder.setTagForChildDirectedTreatment()
AdRequest.Builder.setIsDesignedForFamilies() RequestConfiguration.Builder.setMaxAdContentRating()
AdFormat.UNKNOWN বদলানোর সুবিধা নেই
AdLoader.Builder.forUnifiedNativeAd() AdLoader.Builder.forNativeAd()
AdLoader.Builder.forCustomTemplateAd() AdLoader.Builder.forCustomFormatAd()
AdLoader.Builder.withNativeAdOptions(com.google.android.gms.ads.formats.NativeAdOptions) AdLoader.Builder.withNativeAdOptions(com.google.android.gms.ads.nativead.NativeAdOptions)
void MobileAds.setSameAppKeyEnabled() boolean MobileAds.putPublisherFirstPartyIdEnabled()

v21 থেকে v22-এ মাইগ্রেট করা

Google Mobile Ads SDK (Legacy)-এর মেজর ভার্সন ২১ ও ২২-এর মধ্যে ব্রেকিং পরিবর্তন ও আচরণগত পার্থক্য নিচের উপবিভাগে বর্ণনা করা হয়েছে।

Google Mobile Ads SDK (Legacy) ভার্সন পেতে MobileAds.getVersion() ব্যবহার করুন

MobileAds.getVersion()-এর পক্ষে ভার্সন 22.0.0-এ MobileAds.getVersionString() পদ্ধতি সরিয়ে দেওয়া হয়েছে।

নতুন পদ্ধতিটি প্রত্যাশিত এক্সটার্নাল ভার্সন নম্বর রিটার্ন করে—যেমন, 22.0.0। এই পরিবর্তন সম্পর্কে আরও তথ্য পেতে, নতুন Google Mobile Ads SDK getVersion() মেথড ব্যবহার করুন দেখুন।

পুরনো হয়ে যাওয়া NativeCustomFormatAd.getVideoMediaView() সরানো

২১ ভার্সনে, Google Mobile Ads SDK (Legacy) আপনাকে NativeCustomFormatAd.getVideoMediaView() পদ্ধতি প্রদান করেছে যার মাধ্যমে আপনি নেটিভ কাস্টম বিজ্ঞাপন ফর্ম্যাটের জন্য মিডিয়া অ্যাসেট পেতে পারেন।

ভার্সন ২২ থেকে শুরু করে, আপনি নিজের MediaView তৈরি করতে এবং এর মিডিয়া কন্টেন্ট সেট করতে পারবেন এবং ভিডিও কন্ট্রোল পেতে MediaContent.getVideoController() ব্যবহার করতে পারবেন।

v22

// Called when a custom native ad loads.
@Override
public void onCustomFormatAdLoaded(NativeCustomFormatAd ad) {
    // Assumes you have a FrameLayout in your view hierarchy with the ID media_placeholder.
    FrameLayout mediaPlaceholder = (FrameLayout) findViewById(R.id.media_placeholder);

    MediaContent mediaContent = ad.getMediaContent();
    if (mediaContent != null && mediaContent.hasVideoContent()) {
        // Create a MediaView and set its media content.
        MediaView mediaView = new MediaView(mediaPlaceholder.getContext());
        mediaView.setMediaContent(mediaContent);
        mediaPlaceholder.addView(mediaView);
    }
}

v21

// Called when a custom native ad loads.
@Override
public void onCustomFormatAdLoaded(NativeCustomFormatAd ad) {
    // Assumes you have a FrameLayout in your view hierarchy with the ID media_placeholder.
    FrameLayout mediaPlaceholder = (FrameLayout) findViewById(R.id.media_placeholder);

    VideoController videoController = ad.getVideoController();
    if (videoController.hasVideoContent()) {
        // Add the media view provided by the native ad.
        mediaPlaceholder.addView(ad.getVideoMediaView());
    }
}

আরও তথ্যের জন্য কাস্টম নেটিভ বিজ্ঞাপন গাইড দেখুন।

সরানো বা পরিবর্তন করা পদ্ধতি

নিম্নলিখিত সারণীতে ভার্সন 22.0.0-এ করা নির্দিষ্ট পরিবর্তনগুলি তালিকাভুক্ত করা হয়েছে:

v21.0.0 v22.0.0
MobileAds.getVersionString() MobileAds.getVersion()
NativeCustomFormatAd.getVideoMediaView() NativeCustomFormatAd.getMediaContent()
NativeCustomFormatAd.getVideoController() NativeCustomFormatAd.getMediaContent().getVideoController()
AdRequest.Builder.setAdInfo() AdRequest.Builder.setAdString()
MediationRewardedVideoAdAdapter অ্যাডাপ্টার
MediationRewardedVideoAdListener
com.google.android.gms.ads.mediation.VersionInfo com.google.android.gms.ads.VersionInfo
com.google.android.gms.ads.doubleclick.AppEventListener com.google.android.gms.ads.admanager.AppEventListener

v20 থেকে v21-এ মাইগ্রেট করা

নিম্নলিখিত উপবিভাগে ব্রেকিং পরিবর্তন এবং আচরণগত পার্থক্য সম্পর্কে বর্ণনা করা হয়েছে যা Google Mobile Ads SDK (Legacy)-এর মেজর ভার্সন ২০ এবং ২১-এর মধ্যে রয়েছে:

minSdkVersion-কে 19 বা তার পরবর্তী যেকোনও ভার্সনে আপডেট করুন

21.0.0 ভার্সন থেকে শুরু করে, Google Mobile Ads SDK (Legacy) চালানোর জন্য সব অ্যাপকে ন্যূনতম Android API লেভেল 19-এ থাকতে হবে। API লেভেল অ্যাডজাস্ট করতে, আপনার অ্যাপের বিল্ড ফাইলে minSdkVersion-এর ভ্যালু পরিবর্তন করে ১৯ বা তার বেশি করুন।

কড়া নালিবিলিটি প্রয়োগ করা

স্ট্রিক্ট নালিবিলিটি প্রয়োগ করার প্রস্তুতি হিসেবে, যেসব API-তে আগে নালিবিলিটি স্পষ্টভাবে সংজ্ঞায়িত করা হয়নি সেগুলিতে @NonNull অ্যানোটেশন যোগ করা হয়েছে।

এই পরিবর্তনের ফলে, নাল সেফটি লঙ্ঘন হলে এবং আগে থেকে নিরাপদে null ভ্যালু ম্যানেজ না করলে, Kotlin অ্যাপ এবং Java নাল চেকিং ফ্রেমওয়ার্ক ব্যবহার করা অ্যাপ কাজ নাও করতে পারে (নাল-সেফটি সম্পর্কিত Kotlin ডকুমেন্টেশন দেখুন)।

addNetworkExtras() পদ্ধতি সরানো

SDK ভার্সন 20.3.0-এ, নির্দিষ্ট বিজ্ঞাপন নেটওয়ার্ক অ্যাডাপ্টারে NetworkExtras ইনস্ট্যান্স হিসেবে অতিরিক্ত প্যারামিটার পাস করা addNetworkExtras() পদ্ধতিটি বন্ধ করে দেওয়া হয়েছে এবং এটি 21.0.0 ভার্সনে সরিয়ে দেওয়া হবে। এর পরিবর্তে একই AdRequest.Builder ক্লাসের addNetworkExtrasBundle() মেথড ব্যবহার করুন।

লোকেশন পদ্ধতি সরানো

ভার্সন 21.0.0-এ নিম্নলিখিত লোকেশন পদ্ধতি সরিয়ে দেওয়া হবে:

  • AdRequest.Builder ক্লাসে থাকা setLocation(Location location) পদ্ধতি যা মধ্যস্থতা টার্গেটিংয়ের উদ্দেশ্যে ব্যবহারকারীর লোকেশন সেট করে।
  • AdRequest ক্লাসের getLocation() পদ্ধতি যা ব্যবহারকারীর লোকেশন টার্গেটিং সংক্রান্ত তথ্য রিটার্ন করে যা আগে setLocation(Location location) পদ্ধতিতে পাস করা হয়েছে।
  • MediationAdConfiguration ক্লাসের getLocation() পদ্ধতি যা AdRequest-এর মাধ্যমে ব্যবহারকারীর লোকেশন নির্ধারণ করা হলে, সেটি রিটার্ন করে।

Google, টার্গেট করা বিজ্ঞাপন দেখানোর জন্য লোকেশন ডেটা ব্যবহার করে না। প্রয়োজন হলে থার্ড-পার্টি বিজ্ঞাপন নেটওয়ার্ককে তথ্য প্রদান করার জন্য আপনাকে থার্ড-পার্টি API ব্যবহার করতে হবে।

কাস্টম ইভেন্ট ইন্টারফেসের অবলুপ্তি

কাস্টম ইভেন্ট, মধ্যস্থতা ব্যবহারকারী প্রকাশকদের এমন একটি জলপ্রপাত বিজ্ঞাপন সোর্স সেট-আপ করতে দেয় যা Ad Manager-এর কাজ করে এমন বিজ্ঞাপন সোর্স নয়।

Adapter ক্লাস এবং MediationAdLoadCallback ইন্টারফেসের পরিবর্তে সব কাস্টম ইভেন্ট ইন্টারফেস আর ব্যবহার করা হয় না।

নিচের সারণীতে সেইসব সংশ্লিষ্ট ক্লাস বা ইন্টারফেসের তালিকা দেওয়া আছে যা আপনাকে 21.0.0 ভার্সন থেকে শুরু করে প্রতিটি কাস্টম ইভেন্ট ইন্টারফেসের জন্য ব্যবহার করতে হবে:

v20.0.0 ইন্টারফেস v21.0.0 Class/ Interface
CustomEvent অ্যাডাপ্টার
CustomEventBanner
CustomEventInterstitial
CustomEventNative
CustomEventBannerListener অ্যাডাপ্টার, MediationAdLoadCallback
CustomEventInterstitialListener
CustomEventListener
CustomEventNativeListener

v19 থেকে v20-তে মাইগ্রেট করা

20.0.0 ভার্সনে অনেক ব্রেকিং পরিবর্তন আছে। 19.7.0 ভার্সনে অনেক নতুন API যোগ করা হয়েছে এবং 20.0.0 ভার্সনের প্রস্তুতি হিসেবে অনেক ক্লাস বাতিল করা হয়েছে বা নাম পরিবর্তন করা হয়েছে। এই নির্দেশিকায় 20.0.0 ভার্সনে হওয়া প্রধান পরিবর্তনগুলি হাইলাইট করা হয়েছে।

ফুল-স্ক্রিন ফর্ম্যাট API আপডেট

20.0.0 ভার্সন থেকে শুরু করে, ইন্টারস্টিশিয়াল, পুরস্কার প্রদানকারী, পুরস্কার প্রদানকারী ইন্টারস্টিশিয়াল এবং অ্যাপ খোলার সাথে সাথেই দেখা যায় এমন বিজ্ঞাপন ফর্ম্যাটকে একটি সামঞ্জস্যপূর্ণ API ডিজাইন অনুসরণ করার জন্য স্ট্যান্ডার্ডাইজ করা হয়েছে।

সব ফুল-স্ক্রিন ফর্ম্যাট API নিম্নলিখিত নীতি ব্যবহার করে:

  • স্ট্যাটিক লোড পদ্ধতি
  • একই ধরনের লোড কলব্যাক বা হ্যান্ডলার মেকানিজম
  • প্রেজেন্টেশন কলব্যাকের জন্য FullScreenContentCallback ক্লাসের উপর নির্ভরতা

Legacy RewardedVideoAd API সরানো

নতুন RewardedAd API প্রথম ২০১৯ সালের মার্চ মাসে প্রকাশ করা হয়েছিল এবং ১৮ মাসেরও বেশি সময় ধরে এটিই পছন্দের পুরস্কার প্রদানকারী API হিসেবে বিবেচিত হয়েছে। লেগ্যাসি RewardedVideoAd API-এর তুলনায় এটিতে আরও বেশি উন্নতি করা হয়েছে, যার মধ্যে একবারে একাধিক পুরস্কার প্রদানকারী বিজ্ঞাপন লোড করার ক্ষমতা অন্তর্ভুক্ত।

SDK ভার্সন 20.0.0 থেকে পুরনো RewardedVideoAd API সরিয়ে দেওয়া হয়েছে।

অ্যাডাপ্টিভ ব্যানারের জন্য স্মার্ট ব্যানার বন্ধ করা

অ্যাডাপ্টিভ ব্যানার বিজ্ঞাপনের জন্য স্মার্ট ব্যানার বিজ্ঞাপন বন্ধ করে দেওয়া হয়েছে। অ্যাডাপ্টিভ ব্যানার আরও ভাল পারফর্ম্যান্স প্রদান করে এবং বিজ্ঞাপনের প্রস্থ সেট করার ক্ষেত্রে আরও বেশি নমনীয়তা দেয়। আপনি যদি ফুল-উইথ ব্যানার ব্যবহার করা চালিয়ে যেতে চান, তাহলে নিম্নলিখিত কোড স্নিপেটে দেখানো হয়েছে যে অ্যাডাপ্টিভ ব্যানার ব্যবহার করেও তা করা যেতে পারে:

Java

public class MyActivity extends AppCompatActivity {
  ...
  private AdSize getFullWidthAdaptiveSize() {
    Display display = getWindowManager().getDefaultDisplay();
    DisplayMetrics outMetrics = new DisplayMetrics();
    display.getMetrics(outMetrics);

    float widthPixels = outMetrics.widthPixels;
    float density = outMetrics.density;

    int adWidth = (int) (widthPixels / density);
    return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth);
  }
}

Kotlin

class MyActivity : AppCompatActivity() {
  ...
  private val adaptiveAdSize: AdSize
    get() {
      val display = windowManager.defaultDisplay
      val outMetrics = DisplayMetrics()
      display.getMetrics(outMetrics)

      val density = outMetrics.density

      var adWidthPixels = ad_view_container.width.toFloat()
      if (adWidthPixels == 0f) {
        adWidthPixels = outMetrics.widthPixels.toFloat()
      }

      val adWidth = (adWidthPixels / density).toInt()
      return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth)
    }
}

ছুটির আবেদন সংক্রান্ত কলব্যাক সরিয়ে দেওয়া

ProcessLifecycleOwner-এর পক্ষে সব বিজ্ঞাপন ফর্ম্যাটের জন্য onAdLeftApplication কলব্যাক সরিয়ে দেওয়া হয়েছে। OS-লেভেল API ব্যবহার করলে, ব্যবহারকারীরা আপনার অ্যাপ ছেড়ে বেরিয়ে গেলে আপনাকে বিজ্ঞপ্তি পাঠানো হয়। এটি বিজ্ঞাপন ইন্টার‍্যাকশনের কারণে হোক বা না হোক, আপনাকে বিজ্ঞপ্তি পাঠানো হয়।

মনে রাখবেন, onAdLeftApplication কলব্যাক কখনওই বিজ্ঞাপন ক্লিক হ্যান্ডলার হিসেবে কাজ করার জন্য তৈরি করা হয়নি এবং ক্লিক রিপোর্ট করার জন্য এই কলব্যাকের উপর নির্ভর করলে সঠিক মেট্রিক পাওয়া যায় না। যেমন, AdChoices আইকনে ক্লিক করলে একটি এক্সটার্নাল ব্রাউজার চালু হয় যা কলব্যাককে ইনভোক করে কিন্তু ক্লিক হিসেবে গণ্য হয় না।

ক্লাসের নাম পরিবর্তন করা

নিম্নলিখিত সারণীতে পরিবর্তিত বা সরিয়ে দেওয়া হয়েছে এমন নির্দিষ্ট ক্লাস নামের তালিকা দেওয়া হল:

  • UnifiedNativeAd-এর সাথে সম্পর্কিত বেশিরভাগ ক্লাসের নাম পরিবর্তন করে NativeAd করা হয়েছে।
  • MobileAds.Settings, NativeExpressAdView, NativeAppInstallAd, NativeContentAd এবং InstreamAd ক্লাস ও ভিউ সরিয়ে দেওয়া হয়েছে।
  • Publisher প্রিফিক্স সহ সব ক্লাসকে AdManager প্রিফিক্স দিয়ে পরিবর্তন করা হয়েছে।
  • InterstitialAd প্যাকেজের নাম পরিবর্তন করা হয়েছে।
19.5.0 ক্লাস 20.0.0 ক্লাস
com.google.android.gms.ads. com.google.android.gms.ads.
reward.RewardedVideoAd rewarded.RewardedAd
reward.RewardedVideoAdListener পুরস্কার প্রদানকারী বিজ্ঞাপন লোড কলব্যাক ও ফুল-স্ক্রিন কন্টেন্ট কলব্যাক
reward.RewardItem rewarded.RewardItem
rewarded.RewardedAdCallback OnUserEarnedRewardListener
formats.UnifiedNativeAdView nativead.NativeAdView
formats.UnifiedNativeAd nativead.NativeAd
formats.UnifiedNativeAdAssetNames nativead.NativeAdAssetNames
formats.UnifiedNativeAd.OnUnifiedNativeAdLoadedListener nativead.NativeAd.OnNativeAdLoadedListener
formats.AdChoicesView nativead.AdChoicesView
formats.NativeAd.AdChoicesInfo nativead.NativeAd.AdChoicesInfo
formats.MediaView nativead.MediaView
formats.NativeAdViewHolder nativead.NativeAdViewHolder
formats.NativeAdOptions nativead.NativeAdOptions
formats.NativeCustomTemplateAd nativead.NativeCustomFormatAd
formats.NativeCustomTemplateAd.OnCustomTemplateAdLoadedListener nativead.NativeCustomFormatAd.OnCustomFormatAdLoadedListener
MobileAds.Settings সরানো হয়েছে
doubleclick.PublisherAdRequest admanager.AdManagerAdRequest
doubleclick.PublisherAdView admanager.AdManagerAdView
formats.PublisherAdViewOptions formats.AdManagerAdViewOptions
doubleclick.PublisherInterstitialAd admanager.AdManagerInterstitialAd
InterstitialAd interstitial.InterstitialAd
NativeExpressAdView সরানো হয়েছে
instream.InstreamAd সরানো হয়েছে
mediation.admob.AdMobExtras সরানো হয়েছে
Correlator সরানো হয়েছে
search.SearchAdRequest সরানো হয়েছে
Interface AdRequest.TagForUnderAgeOfConsent সরানো হয়েছে
ইন্টারফেস AdRequest.MaxAdContentRating সরানো হয়েছে
formats.NativeAppInstallAd native.NativeAd
formats.NativeAppInstallAdView native.NativeAdView
mediation.NativeAppInstallAdMapper mediation.UnifiedNativeAdMapper
formats.NativeContentAd native.NativeAd
formats.NativeContentAdView native.NativeAdView
mediation.NativeContentAdMapper mediation.UnifiedNativeAdMapper

সরানো/পরিবর্তন করা পদ্ধতি

নিচের টেবিলে 20.0.0 ভার্সনে করা নির্দিষ্ট পরিবর্তনগুলি তালিকাভুক্ত করা হয়েছে:

  • MobileAds ক্লাস থেকে পুরনো হয়ে যাওয়া ইনিশিয়ালাইজেশন পদ্ধতি সরিয়ে দেওয়া হয়েছে।
  • AdRequest.Builder() ক্লাস থেকে কিছু পদ্ধতি সরিয়ে দেওয়া হয়েছে অথবা RequestConfiguration ক্লাসে সরিয়ে দেওয়া হয়েছে।
  • পুরস্কৃত বিজ্ঞাপন ও ইন্টারস্টিশিয়াল বিজ্ঞাপন API-কে সব ফুল-স্ক্রিন ফর্ম্যাটের সাথে মানানসই করে আপডেট করা হয়েছে।
  • Correlator ফিচার সরিয়ে দেওয়া হয়েছে।
শ্রেণী v19.5.0 API v20.0.0 API নোট
AdSize getPortraitBannerAdSizeWithWidth() getPortraitAnchoredAdaptiveBannerAdSize()
getLandscapeBannerAdSizeWithWidth() getLandscapeAnchoredAdaptiveBannerAdSize()
getCurrentOrientationBannerAdSizeWithWidth() getCurrentOrientationAnchoredAdaptiveBannerAdSize()
MobileAds initialize(Context, String) MobileAds.initialize(Context, OnInitializationCompleteListener) AndroidManifest.xml-এ এখন অ্যাপ আইডি সেট করা আছে।
initialize(Context, String, MobileAds.Settings) initialize(Context, OnInitializationCompleteListener) Settings ক্লাস আর ব্যবহার করা যাবে না।
getRewardedVideoAdInstance() সরানো হয়েছে এর পরিবর্তে RewardedAd API ব্যবহার করুন।
AdListener onAdFailedToLoad(int) onAdFailedToLoad(LoadAdError)
onAdLeftApplication() সরানো হয়েছে ফুল-স্ক্রিন বিজ্ঞাপন ফর্ম্যাটে AdListener-এর পরিবর্তে FullscreenContentCallback ব্যবহার করা হয় এবং FullscreenContentCallback-এ কোনও সমতুল্য পদ্ধতি নেই। AdListener থেকে মেথড সরিয়ে দেওয়া হয়েছে।
VideoController getAspectRatio() MediaContent.getAspectRatio()
PublisherAdRequest getGender() সরানো হয়েছে
getBirthday() সরানো হয়েছে
getNetworkExtras() সরানো হয়েছে
setManualImpressionsEnabled() সরানো হয়েছে
updateCorrelator() সরানো হয়েছে বিজ্ঞাপন কন্টেন্ট ফিল্টার করা দেখুন।
PublisherAdRequest.Builder setBirthday() সরানো হয়েছে
setGender() সরানো হয়েছে
setIsDesignedForFamilies() সরানো হয়েছে নির্দেশিকা দেখুন।
addTestDevice() RequestConfiguration.Builder.setTestDeviceIds() টেস্ট বিজ্ঞাপন চালু করুন দেখুন।
tagForChildDirectedTreatment() RequestConfiguration.Builder.setTagForChildDirectedTreatment() বিজ্ঞাপন কন্টেন্ট ফিল্টার করা দেখুন।
setTagForUnderAgeOfConsent() RequestConfiguration.Builder.setTagForUnderAgeOfConsent()
setMaxAdContentRating() RequestConfiguration.Builder.setMaxAdContentRating()
AdView getMediationAdapterClassName() ResponseInfo.getMediationAdapterClassName() AdView পদ্ধতি ব্যবহার করে একটি ResponseInfo অবজেক্ট উপলভ্য, getResponseInfo()।
NativeAdOptions setImageOrientation() setMediaAspectRatio()
getImageOrientation getMediaAspectRatio()
RewardedAd loadAd(AdRequest, RewardedAdLoadCallback) RewardedAd.load(Context, String, AdRequest, RewardedAdLoadCallback) পুরস্কার প্রদানকারী বিজ্ঞাপন এখন অন্যান্য ফুল-স্ক্রিন ফর্ম্যাটের মতোই একই স্ট্যাটিক লোড পদ্ধতি ব্যবহার করে।
loadAd(PublisherAdRequest, RewardedAdLoadCallback) RewardedAd.load(Context, String, AdManagerAdRequest, RewardedAdLoadCallback)
isLoaded() সরানো হয়েছে স্ট্যাটিক লোড পদ্ধতি থেকে পাওয়া কলব্যাক, আগে থেকেই লোড করা একটি বিজ্ঞাপন প্রদান করে।
show(Activity, RewardedAdCallback) show(Activity, OnUserEarnedRewardListener) এই শো পদ্ধতিটি আরও বড় ফুল-স্ক্রিন ফর্ম্যাট সংক্রান্ত পদ্ধতির সাথে সামঞ্জস্যপূর্ণ।
RewardedAdLoadCallback onRewardedAdFailedToLoad(int) onAdFailedToLoad(LoadAdError)
onRewardedAdFailedToLoad(LoadAdError) onAdFailedToLoad(LoadAdError)
onRewardedAdLoaded() onAdLoaded(RewardedAd)
AppOpenAdLoadCallback onAppOpenAdFailedToLoad(int) onAdFailedToLoad(LoadAdError)
onAppOpenAdFailedToLoad(LoadAdError) onAdFailedToLoad(LoadAdError)
onAppOpenAdLoaded(AppOpenAd) onAdLoaded(AppOpenAd)
RewardedInterstitialAdLoadCallback onRewardedInterstitialAdFailedToLoad(int) onAdFailedToLoad(LoadAdError)
onRewardedInterstitialAdFailedToLoad(LoadAdError) onAdFailedToLoad(LoadAdError)
onRewardedInterstitialAdLoaded(RewardedInterstitialAd) onAdLoaded(RewardedInterstitialAd)
PublisherInterstitialAd new PublisherInterstitialAd() InterstitialAd.load(Context, String, AdRequest, InterstitialAdLoadCallback) InterstitialAd এখন অন্যান্য ফুল-স্ক্রিন ফর্ম্যাটের মতো একই স্ট্যাটিক লোড পদ্ধতি ব্যবহার করে।
setAdListener()
DynamicHeightSearchAdRequest getNetworkExtras() সরানো হয়েছে NetworkExtras ক্লাসটি বন্ধ করে দেওয়া হয়েছে।
AdLoader forContentAd() সরানো হয়েছে
forAppInstallAd() সরানো হয়েছে
withCorrelator() সরানো হয়েছে
getMediationAdapterClassName() সরানো হয়েছে