对于具有自适应功能的情况,Google 移动广告 SDK 支持固定的广告尺寸 横幅广告无法满足您的需求
下表列出了标准的横幅广告尺寸。
尺寸(宽 x 高,以 dp 为单位) | 说明 | 可用性 | AdSize 常量 |
---|---|---|---|
320x50 | 横幅 | 手机和平板电脑 | BANNER |
320x100 | 大型横幅 | 手机和平板电脑 | LARGE_BANNER |
300x250 | IAB 中矩形 | 手机和平板电脑 | MEDIUM_RECTANGLE |
468x60 | IAB 全尺寸横幅广告 | 平板电脑 | FULL_BANNER |
728x90 | IAB 页首横幅 | 平板电脑 | LEADERBOARD |
展示广告的容器尺寸必须至少与横幅一样大。任何内边距都会有效减小容器的大小。如果 容器无法容纳横幅广告,则广告不会展示,并且存在下列 将记录警告:
W/Ads: Not enough space to show ad. Needs 320x50 dp, but only has 288x495 dp.
将 AdManagerAdView 添加到布局中
除了以编程方式创建 AdManagerAdView
之外,您还可以将 AdManagerAdView
添加到您希望用于展示 AdManagerAdView
的 Activity
或 Fragment
的 XML 布局中。示例如下:
<com.google.android.gms.ads.admanager.AdManagerAdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/banner_ad_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="/21775744923/example/fixed-size-banner" />
请注意设置以下必需属性:
ads:adSize
:将此列设置为要使用的广告尺寸。如果您不想使用该常量定义的标准尺寸,可改为设置自定义尺寸。示例:ads:adSize="320x50"
。ads:adUnitId
:将此属性设置为您应用中用于展示广告的广告单元。如果您在不同的 activity 中展示横幅广告,则每个都需要 广告单元
自定义广告尺寸
如果您有定位到自定义尺寸的 Ad Manager 预留订单项,则可执行以下操作:
创建具有与您的订单项匹配的自定义宽度和高度的 AdSize
。
Java
AdSize customAdSize = new AdSize(250, 250);
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(customAdSize);
Kotlin
val customAdSize = AdSize(250, 250)
val adView = AdManagerAdView(this)
adView.setAdSizes(customAdSize)
多个广告尺寸
如果您想在同一广告请求中定位到多种广告尺寸的订单项,AdManagerAdView
允许您一次设置多种广告尺寸。
Java
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(AdSize.BANNER, new AdSize(120, 20), new AdSize(250, 250));
Kotlin
val adView = AdManagerAdView(this)
adView.setAdSizes(AdSize.BANNER, AdSize(120, 20), AdSize(250, 250))
AdManagerAdView
默认为第一个广告尺寸。广告加载后,
AdManagerAdView
尺寸更改为已加载的广告尺寸。您的布局应该能够自动适应新的尺寸。
您还可以使用 XML 布局文件中的 ads:adSizes
属性指定多个广告尺寸:
<com.google.android.gms.ads.admanager.AdManagerAdView
android:id="@+id/multiple_ad_sizes_view"
android:layout_width="wrap_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
ads:adSizes="BANNER,120x20,250x250"
ads:adUnitId="AD_UNIT_ID" />
多种广告尺寸示例