您好我正在尝试将广告添加到我的应用中,但我一直收到错误
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);
}
有谁知道错误的含义以及如何解决?
答案 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"