Google Mobile Ads SDK (Legacy), विज्ञापन के तय साइज़ के साथ काम करता है. ऐसा उन स्थितियों में होता है जब अडैप्टिव बैनर विज्ञापन आपकी ज़रूरतों को पूरा नहीं करते.
यहां दी गई टेबल में, स्टैंडर्ड बैनर साइज़ की सूची दी गई है.
| डीपी में साइज़ (चौड़ाई x ऊंचाई) | ब्यौरा | उपलब्धता | AdSize constant |
|---|---|---|---|
| 320x50 | बैनर | फ़ोन और टैबलेट | BANNER |
| 320x100 | बड़ा बैनर | फ़ोन और टैबलेट | LARGE_BANNER |
| 300x250 | IAB मीडियम रेक्टैंगल | फ़ोन और टैबलेट | MEDIUM_RECTANGLE |
| 468x60 | IAB फ़ुल-साइज़ बैनर | टैबलेट | FULL_BANNER |
| 728x90 | IAB लीडरबोर्ड | टैबलेट | LEADERBOARD |
जिस कंटेनर में विज्ञापन दिखाया जाता है उसका साइज़, बैनर के साइज़ के बराबर या उससे बड़ा होना चाहिए. किसी भी पैडिंग से, आपके कंटेनर का साइज़ कम हो जाता है. अगर कंटेनर में बैनर विज्ञापन फ़िट नहीं होता है, तो विज्ञापन नहीं दिखाया जाता है और यह चेतावनी लॉग की जाती है:
W/Ads: Not enough space to show ad. Needs 320x50 dp, but only has 288x495 dp.
विज्ञापन का साइज़, डिवाइस की स्क्रीन के साइज़ से छोटा या उसके बराबर सेट करें.
स्क्रीन का ज़्यादा से ज़्यादा साइज़ तय करने के लिए, Resources.getDisplayMetrics
तरीके का इस्तेमाल करें. AdSize ऑब्जेक्ट के डाइमेंशन, डेंसिटी-इंडिपेंडेंट पिक्सल (डीपी) का इस्तेमाल करते हैं. तुलना करते समय, स्क्रीन के साइज़ को पिक्सल से डीपी में बदलें.
साइज़ से जुड़ी पाबंदियों के बारे में जानने के लिए, Ad Manager में, विज्ञापन न दिखाए जाने की वजह से मिले इंप्रेशन की समस्या हल करना लेख पढ़ें.
लेआउट में AdManagerAdView जोड़ना
प्रोग्राम के हिसाब से AdManagerAdView बनाने के बजाय, AdManagerAdView को उस Activity या Fragment के एक्सएमएल लेआउट में जोड़ें जिसमें आपको इसे दिखाना है. यहां एक उदाहरण दिया गया है:
<com.google.android.gms.ads.admanager.AdManagerAdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/banner_ad_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="/21775744923/example/fixed-size-banner" />
इन ज़रूरी एट्रिब्यूट पर ध्यान दें:
ads:adSize: इसे उस विज्ञापन साइज़ पर सेट करें जिसका आपको इस्तेमाल करना है. अगर आपको कॉन्स्टेंट के हिसाब से तय किए गए स्टैंडर्ड साइज़ का इस्तेमाल नहीं करना है, तो कस्टम साइज़ सेट किया जा सकता है. उदाहरण:ads:adSize="320x50".ads:adUnitId: इसे अपने ऐप्लिकेशन की उस विज्ञापन यूनिट पर सेट करें जहां विज्ञापन दिखाने हैं. अगर आपको अलग-अलग गतिविधियों में बैनर विज्ञापन दिखाने हैं, तो हर गतिविधि के लिए एक विज्ञापन यूनिट की ज़रूरत होगी.
विज्ञापन का कस्टम साइज़
अगर आपके पास Ad Manager के रिज़र्वेशन वाले ऐसे लाइन आइटम हैं जो कस्टम साइज़ को टारगेट करते हैं, तो आपके पास कस्टम चौड़ाई और ऊंचाई वाली AdSize बनाने का विकल्प होता है. यह आपके लाइन आइटम से मैच करती है.
Java
AdSize customAdSize = new AdSize(250, 250);
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(customAdSize);
Kotlin
val customAdSize = AdSize(250, 250)
val adView = AdManagerAdView(this)
adView.setAdSizes(customAdSize)
एक से ज़्यादा साइज़ के विज्ञापन
अगर आपको विज्ञापन दिखाने के एक ही अनुरोध में, अलग-अलग साइज़ के विज्ञापनों के लाइन आइटम टारगेट करने हैं, तो AdManagerAdView की मदद से, एक साथ कई साइज़ के विज्ञापन सेट किए जा सकते हैं.
Java
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(AdSize.BANNER, new AdSize(120, 20), new AdSize(250, 250));
Kotlin
val adView = AdManagerAdView(this)
adView.setAdSizes(AdSize.BANNER, AdSize(120, 20), AdSize(250, 250))
AdManagerAdView, डिफ़ॉल्ट रूप से विज्ञापन के पहले साइज़ पर सेट होता है. विज्ञापन लोड होने के बाद, AdManagerAdView का साइज़, लोड किए गए विज्ञापन के साइज़ में बदल जाता है. आपका लेआउट, नए साइज़ के हिसाब से
अपने-आप अडजस्ट हो जाना चाहिए.
अपनी एक्सएमएल लेआउट फ़ाइल में ads:adSizes एट्रिब्यूट का इस्तेमाल करके, विज्ञापन के कई साइज़ भी तय किए जा सकते हैं:
<com.google.android.gms.ads.admanager.AdManagerAdView
android:id="@+id/multiple_ad_sizes_view"
android:layout_width="wrap_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
ads:adSizes="BANNER,120x20,250x250"
ads:adUnitId="AD_UNIT_ID" />