RRR RRR - 4 months ago 33
Android Question

Not enough space to show ad (AdMob)

I am trying to show AdMob ads in my activity, but it is always giving error that "not enough space to show ad".

My XML file is:

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<com.google.ads.AdView
android:id="@+id/adMobadView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
ads:adSize="BANNER"
ads:adUnitId="@string/admobid"
android:layout_alignParentBottom="true"
android:gravity="bottom|center_horizontal"
ads:loadAdOnCreate="true" />
</RelativeLayout>


My Java file:

AdView ad=(AdView)findViewById(R.id.adMobadView);

AdRequest re = new AdRequest();
re.setTesting(true);
re.setGender(AdRequest.Gender.FEMALE);
ad.loadAd(re);


LogCat:

02-18 14:16:17.869: W/webcore(813): Can't get the viewWidth after the first layout
02-18 14:16:17.979: I/Ads(813): onReceiveAd()
02-18 14:16:17.979: W/Ads(813): Not enough space to show ad! Wants: <320, 50>, Has: <288, 430>

Answer

The left and right padding of your RelativeLayout is consuming space required by your AdView.

Change RelativeLayout config to :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 ...
 android:paddingLeft="0dp"
 android:paddingRight="0dp"
 ...
>

You probably also want to change your AdView config to:

<com.google.ads.AdView
        android:id="@+id/adMobadView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        ...
        />

as you don't really want your AdView to consume the entire screen.