我通过向我的应用添加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.
我该如何解决这个问题?
答案 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/
上找到了一个有效的例子只需点击下载代码即可。