प्रोग्राम के यह बनाएं
View adContainer = findViewById(R.id.adMobView);
AdView mAdView = new AdView(context);
mAdView.setAdSize(AdSize.BANNER);
mAdView.setAdUnitId(YOUR_BANNER_ID);
((RelativeLayout)adContainer).addView(mAdView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
और अपने xml फ़ाइल में
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:id="@+id/adMobView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentBottom="true"/>
</RelativeLayout>
संपादित
बैनर के लिए सबसे अच्छा अभ्यास, दो दृश्य (एक unitId
) प्रति एक बैनर दिखाने के लिए, यदि आप में और अधिक बैनर दिखाना चाहते है एक ही स्क्रीन (अनुशंसित नहीं), आपको console से unitId
और प्रत्येक unitId
के लिए एक विज्ञापन दृश्य बनाना होगा।
मेरा जवाब है:
है, अगर इसकी एक बग पता नहीं है या आप केवल एक adview प्रति unitId
हो सकता है और इसे और अधिक समझ बनाने यदि क्योंकि आप केवल एक unitId
adview प्रति हो सकता है, और docs से पढ़ वे AdView()
को तुरंत चालू करके unitIds
और sizes
या को केवल XML से ही करते हुए इसे करने के दो तरीके दिखाते हैं।
और मैंने इस निष्कर्ष पर पहुंचने के लिए कुछ परीक्षण किए।
अपने com.google.android.gms.ads.AdView
1 से findViewById का उपयोग करके - आप setAdUnitId
प्रोग्राम के आप adSize
पहले सेट कर सकते हैं यदि।
2 - यदि आप पहले से ही अपने एक्सएमएल में हैं तो आप setAdUnitId
प्रोग्रामेटिक रूप से नहीं कर सकते हैं।
3 - अपनी xml में 'setAdUnitId' का उपयोग नहीं करता है, यह Required xml attribute adUnitId was missing
सूचित करेंगे, और adSize
के लिए एक ही तुम दोनों प्रोग्राम के गुण सेट करने के बावजूद।
4 - यदि नहीं setAdUnitId
और setSize
रख दिया और यह programtically शब्दों में कहें, adview आप Required xml attribute adUnitId was missing
सूचित करेंगे, और एक ही आप एक्सएमएल में adSize
सेट नहीं है।
5 - केवल एक चीज प्रोग्राम के आप कर सकते हैं mAdView.loadAd(adRequest)
फोन विज्ञापन
लोड करने के लिए new AdView()
1 का उपयोग करके है - यदि आप एक खाली लेआउट बनाना है, तो यह करने के लिए adview संदर्भ जोड़ने के लिए काम करेंगे राय।
2 - आप सेट कर सकते adSize
और adUnitId
प्रोग्राम के यह काम करेंगे।
3- आप setAdUnitAd
दो बार उपयोग करने के लिए इस अपवाद The ad unit ID can only be set once on AdView.
ही शुरू किया जाएगा यदि आप findViewById
मेरे निष्कर्ष द्वारा उपयोग करने का प्रयास करते हैं कर रहे हैं:
आप एक्सएमएल से केवल उपयोग कर सकते हैं "
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="ca-app-pub-my_id_number_was_ommited_by_security" />
और ऑन क्रेट
AdView mAdView = findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
पर लोड दृश्य
या पूर्ण प्रोग्राम के
View adContainer = findViewById(R.id.adMobView);
AdView mAdView = new AdView(context);
mAdView.setAdSize(AdSize.BANNER);
mAdView.setAdUnitId(YOUR_BANNER_ID);
adContainer.addView(mAdView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
मैं एक लंबे समय के लिए बैनर का उपयोग और है कि इसका जवाब मेरे लिए अच्छा है। XML में अपनी विज्ञापन इकाई आईडी सेट करने के लिए
विज्ञापन की स्थापना करके एक बार कोशिश मैन्युअल रूप से एक्सएमएल फ़ाइल में। –
जो आप इकाई इकाई आईडी सेट करने की कोशिश कर रहे हैं उसे प्राप्त न करें, आपको इसे ca-app-pub-3940256099942544/6300978111 –