我一直在关注these可能过时的说明,将广告插入(测试)到我的Android项目中。在虚拟Nexus 5手机上重新编译项目后,应用程序正常运行,但没有显示添加横幅。
布局文件可能存在问题,因为我的布局文件看起来不像示例布局文件。以下是我的布局文件中包含广告横幅的相关部分:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
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:fitsSystemWindows="true"
tools:context=".MainActivity" >
<android.support.design.widget.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"/>
</android.support.design.widget.AppBarLayout>
<LinearLayout
...
...
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id">
</com.google.android.gms.ads.AdView>
</LinearLayout>
</android.support.design.widget.CoordinatorLayout>
问题与布局有关吗?如何找出未展示广告横幅的原因?
答案 0 :(得分:1)
我认为你应该使用:
xmlns:ads="http://schemas.android.com/apk/res-auto"
而不是:
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
答案 1 :(得分:1)
在与OP的讨论中,结果发现CoordinatorLayout和AdView都在LinearLayout中,而CoordinatorLayout正在将AdView推离屏幕,因为它的高度为“match_parent”
通过将CoordinatorLayout高度更改为0dp,并将权重更改为1,它将增长以填充AdView上方的剩余空间,而不是占据整个屏幕。
android:layout_height="0dp"
android:layout_weight="1"