SDK टूल के वर्शन माइग्रेट करना

इस पेज पर, मौजूदा और पिछले वर्शन के माइग्रेशन के बारे में बताया गया है.

v24 से v25 पर माइग्रेट करना

यहां दिए गए सब-सेक्शन में, Google Mobile Ads SDK (Legacy) के मेजर वर्शन 24 और 25 के बीच के अंतर और नुकसान पहुंचा सकने वाले बदलावों के बारे में बताया गया है.

Android एपीआई लेवल कम से कम 24 होना चाहिए

वर्शन 25.5.0 से, Google Mobile Ads SDK (Legacy) के लिए ज़रूरी है कि सभी ऐप्लिकेशन, कम से कम Android एपीआई लेवल 24 पर काम करें. एपीआई लेवल में बदलाव करने के लिए, ऐप्लिकेशन-लेवल की build.gradle फ़ाइल में minSdk की वैल्यू को 24 या इससे ज़्यादा पर सेट करें.

अब काम न करने वाले विज्ञापन कॉलबैक हटाए गए

बंद किए जा चुके इन विज्ञापन कॉलबैक को इन क्लास से हटा दिया गया है:

कक्षा कॉलबैक हटाए गए रीप्लेसमेंट
SignalCallbacks onFailure(String)
onAdFailedToShow(String)
onFailure(AdError)
onAdFailedToShow(AdError)
MediationAdLoadCallback
MediationInterstitialAdCallback
MediationRewardedAdCallback

ऐंकर किए गए अडैप्टिव बैनर के साइज़ से जुड़े एपीआई में हुए बदलाव

वर्शन 25.0.0 में, ऐंकर किए गए अडैप्टिव बैनर के साइज़ से जुड़े मौजूदा एपीआई बंद कर दिए गए हैं. साथ ही, ऐंकर किए गए बड़े अडैप्टिव बैनर विज्ञापनों के लिए, साइज़ से जुड़े एपीआई लॉन्च किए गए हैं. Google Mobile Ads SDK (Legacy), ऐंकर किए गए बड़े अडैप्टिव बैनर के साइज़ वाले नए एपीआई का इस्तेमाल करके, बैनर विज्ञापनों के लिए वीडियो विज्ञापन की मांग को पूरा कर सकता है.

इस टेबल में, बंद किए गए साइज़िंग एपीआई और उनकी जगह इस्तेमाल किए जाने वाले एपीआई के बारे में बताया गया है:

v24 (अब सेवा में नहीं है) v25 (रिप्लेसमेंट)
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() एपीआई को हटा दिया गया है. इसके बजाय, getConfigurations() तरीके का इस्तेमाल करें. इससे List<MediationConfiguration> सूची मिलती है.

v23 से v24 पर माइग्रेट करना

यहां दिए गए सब-सेक्शन में, Google Mobile Ads SDK (Legacy) के मेजर वर्शन 23 और 24 के बीच के अंतर और नुकसान पहुंचा सकने वाले बदलावों के बारे में बताया गया है.

Android का एपीआई लेवल कम से कम 23 होना चाहिए

वर्शन 24.0.0 से, Google Mobile Ads SDK (Legacy) को सभी ऐप्लिकेशन चलाने के लिए, कम से कम Android एपीआई लेवल 23 की ज़रूरत होती है. एपीआई लेवल में बदलाव करने के लिए, ऐप्लिकेशन-लेवल की build.gradle फ़ाइल में minSdk की वैल्यू को 23 या इससे ज़्यादा पर सेट करें.

ऑप्टिमाइज़ किए गए इनिशलाइज़ेशन और लोडिंग में बदलाव

डिफ़ॉल्ट रूप से, OPTIMIZE_INITIALIZATION और OPTIMIZE_AD_LOADING फ़्लैग, true पर सेट होते हैं. इन फ़्लैग के बारे में ज़्यादा जानने के लिए, इनिशलाइज़ेशन और लोडिंग को ऑप्टिमाइज़ करना लेख पढ़ें.

firebase-ads और firebase-ads-lite डिपेंडेंसी हटा दी गई हैं

SDK टूल के वर्शन 24.0.0 और इसके बाद के वर्शन में, firebase-ads और firebase-ads-lite डिपेंडेंसी शामिल नहीं होती हैं. इसके बजाय, play-services-ads डिपेंडेंसी का इस्तेमाल करें.

कस्टम टारगेटिंग पैरामीटर सेट करना

विज्ञापन दिखाने के अनुरोध पर कस्टम टारगेटिंग सेट करने के लिए, addCustomTargeting() का इस्तेमाल करें.

ऐप्लिकेशन खोलने पर दिखने वाले विज्ञापनों के लिए, ओरिएंटेशन से जुड़े ऐसे एपीआई हटा दिए गए हैं जो अब काम नहीं करते

  • ओरिएंटेशन इनपुट पैरामीटर को स्वीकार करने वाले AppOpenAd.load() तरीके हटा दिए गए हैं. इसके बजाय, AppOpenAd.load() के ऐसे तरीकों का इस्तेमाल करें जिनमें ओरिएंटेशन की ज़रूरत नहीं होती.
  • AppOpenAdOrientation enum को हटाया गया.

मीडिएशन अडैप्टर के लिए, इनाम वाले कॉलबैक की आसान प्रोसेस

वर्शन 24.0.0 में, MediationRewardedAdCallback में onUserEarnedReward() कॉलबैक जोड़ा गया है. साथ ही, onUserEarnedReward(RewardItem) को बंद कर दिया गया है. जब उपयोगकर्ता को इनाम मिलता है, तब मीडिएशन अडैप्टर को onUserEarnedReward() को कॉल करना शुरू करना चाहिए.

मीडिएशन अडैप्टर से कॉलबैक फ़ॉरवर्ड करते समय, Google Mobile Ads SDK (Legacy) के सभी वर्शन, Ad Manager के यूज़र इंटरफ़ेस (यूआई) में OnUserEarnedRewardListener में तय किया गया इनाम दिखाते हैं.

क्लास हटाई गईं

इन क्लास को हटा दिया गया है और इनकी जगह कोई दूसरी क्लास नहीं जोड़ी गई है:

  • DynamicHeightSearchAdRequest
  • SearchAdRequest
  • SearchAdView

हटाए गए तरीके

इन तरीकों को हटा दिया गया है और इनकी जगह कोई दूसरा तरीका नहीं लाया गया है:

कक्षा तरीका
RewardedInterstitialAdLoadCallback onRewardedInterstitialAdLoaded()
onRewardedInterstitialAdFailedToLoad(int)
onRewardedInterstitialAdFailedToLoad(LoadAdError)

तरीके बंद कर दिए गए हैं

यहां दिए गए तरीकों को बंद कर दिया गया है और इनकी जगह कोई दूसरा तरीका नहीं लाया गया है:

कक्षा तरीका
Adapter loadInterscrollerAd()
RtbAdapter loadRtbInterscrollerAd()

v22 से v23 पर माइग्रेट करना

यहां दिए गए सब-सेक्शन में, Google Mobile Ads SDK (Legacy) के मेजर वर्शन 22 और 23 के बीच के अंतर और नुकसान पहुंचा सकने वाले बदलावों के बारे में बताया गया है.

Android का एपीआई लेवल कम से कम 21 होना चाहिए

वर्शन 23.0.0 से, Google Mobile Ads SDK (Legacy) के लिए ज़रूरी है कि सभी ऐप्लिकेशन कम से कम Android एपीआई लेवल 21 पर हों, ताकि वे काम कर सकें. एपीआई लेवल में बदलाव करने के लिए, ऐप्लिकेशन-लेवल की 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) के मेजर वर्शन 21 और 22 के बीच के अंतर और नुकसान पहुंचा सकने वाले बदलावों के बारे में बताया गया है.

Google Mobile Ads SDK (Legacy) वर्शन पाने के लिए, MobileAds.getVersion() का इस्तेमाल करें

MobileAds.getVersionString() तरीके को वर्शन 22.0.0 से हटा दिया गया है. इसकी जगह, MobileAds.getVersion() का इस्तेमाल किया जा सकता है.

नया तरीका, बाहरी वर्शन का अनुमानित नंबर दिखाता है—उदाहरण के लिए, 22.0.0. इस बदलाव के बारे में ज़्यादा जानने के लिए, Google Mobile Ads SDK getVersion() के नए तरीके का इस्तेमाल करें लेख पढ़ें.

काम न करने वाले NativeCustomFormatAd.getVideoMediaView() को हटाना

वर्शन 21 में, Google Mobile Ads SDK (Legacy) ने आपको नेटिव कस्टम विज्ञापन फ़ॉर्मैट के लिए मीडिया ऐसेट पाने के लिए, NativeCustomFormatAd.getVideoMediaView() तरीका उपलब्ध कराया है.

वर्शन 22 से, अपना 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) के मेजर वर्शन 20 और 21 के बीच के अंतर और नुकसान पहुंचा सकने वाले बदलावों के बारे में बताया गया है:

minSdkVersion को 19 या इसके बाद के वर्शन पर अपडेट करें

वर्शन 21.0.0 से, Google Mobile Ads SDK (Legacy) का इस्तेमाल करने वाले सभी ऐप्लिकेशन के लिए ज़रूरी है कि वे कम से कम Android एपीआई लेवल 19 पर काम करते हों. एपीआई लेवल में बदलाव करने के लिए, अपने ऐप्लिकेशन की बिल्ड फ़ाइल में minSdkVersion की वैल्यू को 19 या इससे ज़्यादा पर सेट करें.

शून्यता की सख्त शर्त लागू करना

शून्यता को सख्ती से लागू करने के लिए, उन सभी एपीआई में @NonNull एनोटेशन जोड़े गए हैं जिनमें पहले शून्यता को साफ़ तौर पर तय नहीं किया गया था.

इस बदलाव की वजह से, Kotlin ऐप्लिकेशन और Java के नल चेकिंग फ़्रेमवर्क का इस्तेमाल करने वाले ऐप्लिकेशन काम करना बंद कर सकते हैं. ऐसा तब हो सकता है, जब नल सेफ़्टी से जुड़ी शर्तों का उल्लंघन किया गया हो और पहले null वैल्यू को सुरक्षित तरीके से हैंडल न किया गया हो. ज़्यादा जानकारी के लिए, नल सेफ़्टी के बारे में Kotlin का दस्तावेज़ देखें.

addNetworkExtras() तरीके को हटाना

addNetworkExtras() मेथड, किसी विज्ञापन नेटवर्क कंपनी के अडैप्टर को NetworkExtras इंस्टेंस के तौर पर अतिरिक्त पैरामीटर पास करता है. इसे एसडीके के 20.3.0 वर्शन में बंद कर दिया गया था. अब इसे 21.0.0 वर्शन से हटा दिया जाएगा. इसके बजाय, उसी AdRequest.Builder क्लास के addNetworkExtrasBundle() तरीके का इस्तेमाल करें.

जगह की जानकारी के तरीकों को हटाना

वर्शन 21.0.0 में, जगह की जानकारी ऐक्सेस करने के ये तरीके हटा दिए जाएंगे:

  • AdRequest.Builder क्लास में setLocation(Location location) मेथड, जो मीडिएशन टारगेटिंग के मकसद से उपयोगकर्ता की जगह की जानकारी सेट करता है.
  • AdRequest क्लास में getLocation() तरीका, उपयोगकर्ता की जगह के हिसाब से टारगेटिंग की जानकारी दिखाता है. यह जानकारी, पहले setLocation(Location location) तरीके को पास की गई थी.
  • MediationAdConfiguration क्लास में getLocation() तरीका, जो उपयोगकर्ता की जगह की जानकारी दिखाता है. हालांकि, ऐसा तब होता है, जब AdRequest ने जगह की जानकारी तय की हो.

Google, जगह की जानकारी के डेटा का इस्तेमाल विज्ञापन टारगेट करने के लिए नहीं करता. अगर ज़रूरी हो, तो तीसरे पक्ष के विज्ञापन नेटवर्क को जानकारी देने के लिए, तीसरे पक्ष के एपीआई का इस्तेमाल करें.

कस्टम इवेंट इंटरफ़ेस बंद करना

कस्टम इवेंट की मदद से, मीडिएशन का इस्तेमाल करने वाले पब्लिशर, वॉटरफ़ॉल विज्ञापन सोर्स सेट अप कर सकते हैं. यह ऐसा विज्ञापन सोर्स होता है जो Ad Manager के काम करने वाले विज्ञापन सोर्स में से एक नहीं होता.

कस्टम इवेंट के सभी इंटरफ़ेस अब काम नहीं करते. इनकी जगह, Adapter क्लास और MediationAdLoadCallback इंटरफ़ेस का इस्तेमाल करें.

यहां दी गई टेबल में, हर कस्टम इवेंट इंटरफ़ेस के लिए इस्तेमाल की जाने वाली क्लास या इंटरफ़ेस की सूची दी गई है. यह सूची, वर्शन 21.0.0 से शुरू होती है:

v20.0.0 इंटरफ़ेस v21.0.0 क्लास/ इंटरफ़ेस
CustomEvent अडैप्टर
CustomEventBanner
CustomEventInterstitial
CustomEventNative
CustomEventBannerListener Adapter, MediationAdLoadCallback
CustomEventInterstitialListener
CustomEventListener
CustomEventNativeListener

v19 से v20 पर माइग्रेट करना

वर्शन 20.0.0 में, नुकसान पहुंचा सकने वाले कई बदलाव किए गए हैं. वर्शन 19.7.0 में कई नए एपीआई जोड़े गए हैं. साथ ही, वर्शन 20.0.0 की तैयारी के लिए, कई क्लास को बंद कर दिया गया है या उनका नाम बदल दिया गया है. इस गाइड में, वर्शन 20.0.0 में हुए मुख्य बदलावों के बारे में बताया गया है.

फ़ुल-स्क्रीन फ़ॉर्मैट वाले एपीआई के अपडेट

वर्शन 20.0.0 और इसके बाद के वर्शन में, इंटरस्टीशियल, इनाम वाले, इनाम वाले इंटरस्टीशियल, और ऐप्लिकेशन खोलने पर दिखने वाले विज्ञापन फ़ॉर्मैट को स्टैंडर्ड के मुताबिक बनाया गया है, ताकि वे एक जैसे एपीआई डिज़ाइन का इस्तेमाल कर सकें.

फ़ुल-स्क्रीन फ़ॉर्मैट वाले सभी एपीआई, इन सिद्धांतों का इस्तेमाल करते हैं:

  • स्टैटिक लोड का तरीका
  • लोड कॉलबैक या हैंडलर मैकेनिज़्म
  • प्रज़ेंटेशन कॉलबैक के लिए, FullScreenContentCallback क्लास पर निर्भरता

लेगसी RewardedVideoAd API को हटाना

नया RewardedAd एपीआई, मार्च 2019 में लॉन्च किया गया था. यह 18 महीनों से ज़्यादा समय से, इनाम वाले विज्ञापन के लिए सबसे ज़्यादा इस्तेमाल किया जाने वाला एपीआई है. इसमें लेगसी RewardedVideoAd एपीआई की तुलना में ज़्यादा सुधार किए गए हैं. इनमें एक बार में एक से ज़्यादा इनाम वाले विज्ञापन लोड करने की सुविधा भी शामिल है.

लेगसी RewardedVideoAd एपीआई को एसडीके वर्शन 20.0.0 से हटा दिया गया है.

स्मार्ट बैनर की जगह अडैप्टिव बैनर का इस्तेमाल

स्मार्ट बैनर विज्ञापनों की जगह अब अडैप्टिव बैनर विज्ञापनों का इस्तेमाल किया जाता है. अडैप्टिव बैनर, विज्ञापन की चौड़ाई सेट करने में बेहतर परफ़ॉर्मेंस और ज़्यादा सुविधा देते हैं. अगर आपको पूरी चौड़ाई वाले बैनर का इस्तेमाल जारी रखना है, तो अडैप्टिव बैनर का इस्तेमाल करके ऐसा किया जा सकता है. इसके लिए, यहां दिया गया कोड स्निपेट देखें:

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)
    }
}

ऐप्लिकेशन छोड़ने के लिए कॉलबैक हटाने की सुविधा

सभी विज्ञापन फ़ॉर्मैट के लिए, onAdLeftApplication कॉलबैक को हटा दिया गया है. इसकी जगह, ProcessLifecycleOwner का इस्तेमाल किया जाएगा. ओएस-लेवल एपीआई का इस्तेमाल करने पर, आपको तब सूचना मिलती है, जब उपयोगकर्ता आपके ऐप्लिकेशन को छोड़ते हैं. भले ही, ऐसा किसी विज्ञापन इंटरैक्शन की वजह से हुआ हो या नहीं.

ध्यान दें कि 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 rewarded.RewardedAdLoadCallback और FullScreenContentCallback
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 क्लास में ले जाया गया है.
  • RewardedAd और InterstitialAd एपीआई को अपडेट किया गया है, ताकि वे सभी फ़ुल-स्क्रीन फ़ॉर्मैट के साथ काम कर सकें.
  • कोरिलेटर की सुविधाएं हटा दी गई हैं.
कक्षा 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() ResponseInfo ऑब्जेक्ट, AdView तरीके, getResponseInfo() का इस्तेमाल करके उपलब्ध होता है.
NativeAdOptions setImageOrientation() setMediaAspectRatio()
getImageOrientation getMediaAspectRatio()
RewardedAd loadAd(AdRequest, RewardedAdLoadCallback) RewardedAd.load(Context, String, AdRequest, RewardedAdLoadCallback) RewardedAd अब अन्य फ़ुल-स्क्रीन फ़ॉर्मैट की तरह ही, स्टैटिक लोड करने के तरीके का इस्तेमाल करता है.
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() हटाया गया