अपने कोड में कुछ बदलाव करके, विज्ञापन दिखाने के अनुरोधों में नेटिव और बैनर विज्ञापनों को एक साथ शामिल किया जा सकता है.
ज़रूरी शर्तें
- Google Mobile Ads SDK का 11.0.0 या इसके बाद का वर्शन.
- शुरुआती निर्देश पूरे करना.
विज्ञापन लोड करना
कस्टम तरीके से रेंडर किए गए नेटिव विज्ञापन, AdLoader क्लास का इस्तेमाल करके लोड किए जाते हैं. इसमें इसकी
अपनी AdLoader.Builder क्लास भी होती है. इसका इस्तेमाल, विज्ञापन बनाते समय उसे अपनी पसंद के मुताबिक बनाने के लिए किया जाता है. किसी ऐप्लिकेशन को बनाते समय, उसमें AdLoader में लिसनर जोड़ने से यह तय किया जा सकता है कि वह किस तरह के विज्ञापन फ़ॉर्मैट पाने के लिए तैयार है. इसके बाद, AdLoader सिर्फ़ उन टाइप के विज्ञापन दिखाने का अनुरोध करता है.
AdLoader ऑब्जेक्ट को इस तरह भी कॉन्फ़िगर किया जा सकता है कि वह विज्ञापन दिखाने के ऐसे अनुरोध करे जिनसे बैनर विज्ञापन या नेटिव विज्ञापन दिखाया जा सके. किसी ऐप्लिकेशन को बनाते समय, उसमें AdLoader में OnAdManagerAdViewLoadedListener जोड़ने से यह तय किया जा सकता है कि विज्ञापन दिखाने के अनुरोध को पूरा करने के लिए, बैनर विज्ञापन, नेटिव विज्ञापनों के साथ मुकाबला करें.
यहां दिए गए कोड से पता चलता है कि AdLoader को कैसे बनाया जाता है. इसकी मदद से, एक ही अनुरोध में नेटिव या बैनर विज्ञापन लोड किया जा सकता है:
Java
AdLoader adLoader = new AdLoader.Builder(context, "/21775744923/example/native-and-banner") .forNativeAd(new NativeAd.OnNativeAdLoadedListener() { @Override public void onNativeAdLoaded(NativeAd nativeAd) { // Show the ad. } }) .forAdManagerAdView(new OnAdManagerAdViewLoadedListener() { @Override public void onAdManagerAdViewLoaded(AdManagerAdView adView) { // Show the banner ad. } }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE) .withAdListener(new AdListener() { @Override public void onAdFailedToLoad(LoadAdError error) { // Handle the failure by logging, altering the UI, etc. } }) .withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build();
Kotlin
val adLoader = AdLoader.Builder(this, "/21775744923/example/native-and-banner") .forNativeAd { nativeAd -> // Show the ad. } .forAdManagerAdView({ adView -> // Show the banner ad. }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE) .withAdListener(object: AdListener() { override fun onAdFailedToLoad(adError: LoadAdError) { // Handle the failure by logging, altering the UI, etc. } }) .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build()
forAdManagerAdView() मेथड, AdLoader को बैनर विज्ञापन पाने के लिए तैयार करता है.
forAdManagerAdView() को कॉल करते समय, मान्य विज्ञापन साइज़ की वैरिएबल-लेंथ वाली सूची को OnAdManagerAdViewLoadedListener के साथ तय करना ज़रूरी है.
विज्ञापन दिखाने का मान्य अनुरोध करने के लिए, कम से कम एक मान्य विज्ञापन साइज़ तय करना ज़रूरी है. जब कोई बैनर विज्ञापन लोड हो जाता है, तो तय किए गए लिसनर ऑब्जेक्ट के onAdManagerAdViewLoaded() मेथड को कॉल किया जाता है.
डिवाइस की स्क्रीन के साइज़ से छोटा या उसके बराबर विज्ञापन साइज़ सेट करें.
स्क्रीन का ज़्यादा से ज़्यादा साइज़ तय करने के लिए, Resources.getDisplayMetrics
मेथड का इस्तेमाल करें. AdSize ऑब्जेक्ट के डाइमेंशन, डेंसिटी-इंडिपेंडेंट पिक्सल (डीपी) का इस्तेमाल करते हैं. तुलना करते समय, स्क्रीन के साइज़ को पिक्सल से डीपी में बदलें.
साइज़ की पाबंदियों के बारे में ज़्यादा जानने के लिए, Ad Manager में विज्ञापन न दिखाने की वजह से होने वाले इंप्रेशन की समस्या हल करना लेख पढ़ें.
AdViewOptions ऑब्जेक्ट सेट करना
AdLoader को बनाते समय, एक और वैकल्पिक मेथड withAdManagerAdViewOptions() शामिल किया जा सकता है:
Java
.withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual banner options settings. .build()
Kotlin
.withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual banner options settings. .build()
AdManagerAdViewOptions ऑब्जेक्ट की मदद से, पब्लिशर AdLoader से लोड किए गए बैनर विज्ञापनों के लिए खास विकल्प सेट कर सकते हैं. जैसे:
setManualImpressionsEnabled()- Google Ad Manager में रिज़र्वेशन के लिए, मैन्युअल इंप्रेशन रिपोर्टिंग की सुविधा चालू करता है. मैन्युअल इंप्रेशन का इस्तेमाल करने वाले ऐप्लिकेशन, यह तय कर सकते हैं कि इंप्रेशन कब रिकॉर्ड किया जाना चाहिए. इसके लिए, वे
AdManagerAdView.recordManualImpression()को कॉल कर सकते हैं.