Android AdMob错误在调用load之前,必须设置广告尺寸和广告单元ID

时间:2014-04-30 20:36:45

标签: android admob

您好我正在尝试将广告添加到我的应用中,但我一直收到错误

The ad size and ad unit ID must be set before load is called.

继承人到目前为止我所尝试过的事情

继承我的布局(我在我的应用程序中放入xml的实际adUnitId编号只是没有把它放在这里,因为我认为在网上发布它不是一个好主意)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/levelView" 
     >

     <RelativeLayout 
      android:id="@+id/header" 
      android:layout_width="match_parent"
      android:layout_height="70dp"
      >


          <TextView
            android:id="@+id/tv1"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
           android:layout_marginTop="5dp"
            android:textSize="15dp"
            android:textColor="@color/white"
            android:text="hello"
            android:gravity="center"
            android:singleLine="true"/>

         <TextView
            android:id="@+id/headertitle"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
             android:layout_below="@+id/headertitle"
           android:textSize="40dp"
            android:textColor="@color/white"
            android:layout_marginTop="15dp"
            android:text="2014"
            android:gravity="center"
            android:singleLine="true"/>

         <ImageView
             android:id="@+id/imageView1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_centerVertical="true"
             android:layout_marginLeft="18dp"
             android:layout_toRightOf="@+id/headertitle"
             android:src="@drawable/level_logo" />

    </RelativeLayout>


   <GridView
        android:id="@+id/gridView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/header"
        android:numColumns="4"
        android:listSelector="@null"
        android:layout_centerHorizontal="true" >
    </GridView>



  <com.google.android.gms.ads.AdView android:id="@+id/adView"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         android:layout_below="@+id/gridView1"
                         ads:adUnitId="MY ID NUMBER"
                         ads:adSize="BANNER"/>



</RelativeLayout>

然后在我的onCreate()中运行以下函数

 public void loadAds(){
        // Look up the AdView as a resource and load a request.
        AdView adView = (AdView)this.findViewById(R.id.adView);
        AdRequest adRequest = new AdRequest.Builder().build();
        adView.loadAd(adRequest); 
        }

有谁知道错误的含义以及如何解决?

4 个答案:

答案 0 :(得分:13)

更改xmlns:ads架构

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

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

答案 1 :(得分:1)

我想出了改变的答案

<com.google.android.gms.ads.AdView android:id="@+id/adView"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         android:layout_below="@+id/gridView1"
                         ads:adUnitId="MY ID NUMBER"
                         ads:adSize="BANNER"/>

<com.google.android.gms.ads.AdView android:id="@+id/adView"

                         xmlns:ads="http://schemas.android.com/apk/res-auto"
                         android:layout_width="match_parent"
                         android:layout_height="wrap_content"

                         ads:adUnitId="ca-app-pub-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
                         ads:adSize="BANNER"
                         android:layout_alignParentBottom="true"
                         >

  </com.google.android.gms.ads.AdView>

答案 2 :(得分:0)

我遇到了同样的错误,并最终使用代码实例化来解决问题。

答案 3 :(得分:0)

更改此代码

   <com.google.android.gms.ads.AdView android:id="@+id/adView"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_below="@+id/gridView1"
                     ads:adUnitId="MY ID NUMBER"
                     ads:adSize="BANNER"/>

   <com.google.android.gms.ads.AdView android:id="@+id/adView"

                     xmlns:ads="http://schemas.android.com/apk/res-auto"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"

                     ads:adUnitId="ca-app-pub-8510605212168324/8634800090"
                     ads:adSize="BANNER"
                     android:layout_alignParentBottom="true"
                     >

并删除

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