如果自動調整橫幅廣告不符合需求,Google Mobile Ads SDK 也支援固定大小的廣告。
下表列出標準橫幅大小。
| 尺寸以 dp 為單位 (寬 x 高) | 說明 | 適用裝置 | 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 加入要顯示 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:將此項設為應用程式中要顯示廣告的廣告單元。如果在不同活動顯示橫幅廣告,每項活動都需要一個廣告單元。
自訂廣告大小
如果 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" />