如果自動調整橫幅廣告不符合需求,Google Mobile Ads 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
加入要顯示 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" />