मैं अपने ऐप में ऐडबॉब विज्ञापन जोड़ने की कोशिश करता हूं। प्रारंभ में मैं कोड जोड़ता हूं:

AdView adView = (AdView) findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder()
            .addTestDevice("abc")
            .build();
adView.loadAd(adRequest);
11-23 11:16:20.285: E/AndroidRuntime(24361): FATAL EXCEPTION: main
11-23 11:16:20.285: E/AndroidRuntime(24361): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.phohaycom/com.example.phohay.activity.ReadingActivity2}: java.lang.IllegalStateException: The ad size and ad unit ID must be set before loadAd is called.

इसलिए मैं कोड जोड़ने की कोशिश करता हूं:

AdView mAdView = (AdView) findViewById(R.id.adView);
		mAdView.setAdSize(AdSize.BANNER);
		mAdView.setAdUnitId("ca-app-pub-1845170371498416/12345678");
		
		AdRequest adRequest = new AdRequest.Builder()
        .addTestDevice("D5AF9D9AFD269EF3B817CD9804BF2CE9")
        .build();
		mAdView.loadAd(adRequest);
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ffffff" >
   <com.google.android.gms.ads.AdView
            android:id="@+id/adView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            ads:adSize="BANNER"
            ads:adUnitId="@string/banner_ad_unit_id" >
        </com.google.android.gms.ads.AdView>
  </RelativeLayout>

यह कहीं भी विफल रहता है? कृपया मेरी मदद करें

2
Trần Văn Hòa 23 नवम्बर 2015, 05:57

3 जवाब

सबसे बढ़िया उत्तर

मैंने यह कर दिया है। मैं xml में कोड नहीं जोड़ता। इसके बजाय मैं रैखिक लेआउट बनाता हूं और कोड में विज्ञापन जोड़ता हूं

AdView adView = new AdView(getApplication());
        adView.setAdUnitId("ca-app-pub-1845170371498416/123456789");
        adView.setAdSize(AdSize.BANNER);

         LinearLayout adLinLay = (LinearLayout) findViewById(R.id.Llayout);
        adLinLay.addView(adView);
        AdRequest adRequest = new AdRequest.Builder().addTestDevice(
				"D5AF9D9AFD269EF3B817CD9804BF2CE9").build();
        adView.loadAd(adRequest);
0
Trần Văn Hòa 23 नवम्बर 2015, 04:48

मुझे लगता है कि दोनों ads:adSize="BANNER" या mAdView.setAdSize(AdSize.BANNER); को हटा देंगे।

0
T D Nguyen 23 नवम्बर 2015, 04:29

क्या आप इसे आज़मा सकते हैं? :

निकालें यह एक:

xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"

हटाएं xmlns: ads *** टैग

यह जोड़ें यह एक:

xmlns:ads="http://schemas.android.com/apk/res-auto"

Xml फ़ाइल नीचे की तरह दिखनी चाहिए:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
 xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:ads="http://schemas.android.com/apk/res-auto"
 android:orientation="vertical"
 android:layout_width="match_parent"
 android:layout_height="match_parent">

<TextView 
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:text="@string/hello"/>

<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="INSERT_YOUR_AD_UNIT_ID_HERE"/>
</LinearLayout>

आशा है कि यह आपकी मदद करेगा।

0
Hiren Patel 23 नवम्बर 2015, 05:03