Admob横幅未显示

时间:2015-01-25 21:18:15

标签: android admob

我通过向我的应用添加adMob横幅来解决一个奇怪的问题。 这是我第一次使用android studio,所以我跟着教程(唯一不同的是build.gradle文件的编辑)。

我一如既往地为广告添加横幅:

<RelativeLayout     xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/bg_cut"
    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">

    <ListView
        android:id="@+id/list_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/banner" />

    <com.google.android.gms.ads.AdView
        android:id="@+id/banner"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        ads:adSize="SMART_BANNER"
        ads:adUnitId="@string/admob_id" />

</RelativeLayout>

并将横幅初始化为我的活动:

 AdView mAdView = (AdView) findViewById(R.id.banner);
 AdRequest adRequest = new AdRequest.Builder().build();
 mAdView.loadAd(adRequest);

现在,当我启动我的应用程序时,横幅空间为空,我得到一些警告,如

W/Ads﹕ Not enough space to show ad. Needs 360x50 dp, but only has 328x479 dp.

但是日志告诉我横幅已正确加载:

I/Ads﹕ Scheduling ad refresh 40000 milliseconds from now.
I/Ads﹕ Ad finished loading.

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:6)

你会成功地看到:

I/Ads﹕ Scheduling ad refresh 40000 milliseconds from now.
I/Ads﹕ Ad finished loading.

AdMob可能会或可能不会抱怨&#34;有足够的空间&#34;但如果父视图中有填充,则不会显示。您需要将要填充的视图包装在另一个布局中,或者直接向该特定视图添加填充。

请从父布局中删除填充:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/bg_cut"
    tools:context=".MainActivity">

    <ListView
        android:id="@+id/list_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/banner" />

    <com.google.android.gms.ads.AdView
        android:id="@+id/banner"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        ads:adSize="SMART_BANNER"
        ads:adUnitId="@string/admob_id" />

</RelativeLayout>

答案 1 :(得分:0)

如果你还在苦苦挣扎,我在http://www.ahotbrew.com/android-studio-admob-banner-and-interstitial-tutorial/

上找到了一个有效的例子

只需点击下载代码即可。