固定尺寸的横幅广告
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
在自适应横幅广告无法满足您的需求时,您可以通过 Google 移动广告 SDK 使用固定尺寸的广告。
下表列出了标准的横幅广告尺寸。
展示广告的容器尺寸必须至少与横幅一样大。任何内边距都会有效地减小容器的大小。如果容器无法容纳横幅广告,则广告不会展示,并且系统会记录以下警告:
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" />
请注意设置以下必需属性:
自定义广告尺寸
如果您有定位到自定义尺寸的 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" />
多个广告尺寸示例
Java
Kotlin
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-31。
[null,null,["最后更新时间 (UTC):2025-08-31。"],[[["\u003cp\u003eThe Google Mobile Ads SDK allows you to implement fixed-size ads as an alternative to adaptive banners, with support for standard sizes like Banner (320x50), Large Banner (320x100), and more.\u003c/p\u003e\n"],["\u003cp\u003eYou can define fixed-size ads either programmatically using the \u003ccode\u003eAdManagerAdView\u003c/code\u003e class or declaratively within your XML layout, ensuring the container size is sufficient to display the ad.\u003c/p\u003e\n"],["\u003cp\u003eTo request ads of multiple sizes in a single request, use the \u003ccode\u003esetAdSizes\u003c/code\u003e method of the \u003ccode\u003eAdManagerAdView\u003c/code\u003e or specify multiple sizes in the \u003ccode\u003eads:adSizes\u003c/code\u003e attribute of your XML layout.\u003c/p\u003e\n"],["\u003cp\u003eWhen using multiple ad sizes, the \u003ccode\u003eAdManagerAdView\u003c/code\u003e initially defaults to the first size specified but will adapt to the size of the loaded ad, requiring your layout to be flexible.\u003c/p\u003e\n"],["\u003cp\u003eCustom ad sizes can be created and used for Ad Manager line items targeting specific dimensions, ensuring a match between your ad requests and the reserved inventory.\u003c/p\u003e\n"]]],[],null,["Select platform: [Android](/ad-manager/mobile-ads-sdk/android/banner/fixed-size \"View this page for the Android platform docs.\") [iOS](/ad-manager/mobile-ads-sdk/ios/banner/fixed-size \"View this page for the iOS platform docs.\") [Flutter](/ad-manager/mobile-ads-sdk/flutter/banner/fixed-size \"View this page for the Flutter platform docs.\")\n\n\u003cbr /\u003e\n\nThe Google Mobile Ads SDK supports fixed ad sizes for situations where adaptive\nbanners ads don't meet your needs.\n\nThe following table lists the standard banner sizes.\n\n| Size in dp (WxH) | Description | Availability | AdSize constant |\n|------------------|----------------------|--------------------|---------------------------------------------------------------------------------------------------------------------|\n| 320x50 | Banner | Phones and tablets | [BANNER](/ad-manager/mobile-ads-sdk/android/reference/com/google/android/gms/ads/AdSize#BANNER) |\n| 320x100 | Large banner | Phones and tablets | [LARGE_BANNER](/ad-manager/mobile-ads-sdk/android/reference/com/google/android/gms/ads/AdSize#LARGE_BANNER) |\n| 300x250 | IAB medium rectangle | Phones and tablets | [MEDIUM_RECTANGLE](/ad-manager/mobile-ads-sdk/android/reference/com/google/android/gms/ads/AdSize#MEDIUM_RECTANGLE) |\n| 468x60 | IAB full-size banner | Tablets | [FULL_BANNER](/ad-manager/mobile-ads-sdk/android/reference/com/google/android/gms/ads/AdSize#FULL_BANNER) |\n| 728x90 | IAB leaderboard | Tablets | [LEADERBOARD](/ad-manager/mobile-ads-sdk/android/reference/com/google/android/gms/ads/AdSize#LEADERBOARD) |\n\nThe size of the container in which you place your ad must be at least as big as\nthe banner. Any padding effectively decreases the size of your container. If the\ncontainer cannot fit the banner ad, the ad isn't shown and the following\nwarning is logged: \n\n W/Ads: Not enough space to show ad. Needs 320x50 dp, but only has 288x495 dp.\n\nAdd AdManagerAdView to the layout\n\nAlternative to creating the `AdManagerAdView`\nprogrammatically, add the `AdManagerAdView` to the XML layout\nfor the `Activity` or `Fragment` in which you'd like to display\nit. Here's an example: \n\n \u003ccom.google.android.gms.ads.admanager.AdManagerAdView\n xmlns:ads=\"http://schemas.android.com/apk/res-auto\"\n android:id=\"@+id/banner_ad_view\"\n android:layout_width=\"wrap_content\"\n android:layout_height=\"wrap_content\"\n android:layout_centerHorizontal=\"true\"\n android:layout_alignParentBottom=\"true\"\n ads:adSize=\"BANNER\"\n ads:adUnitId=\"/21775744923/example/fixed-size-banner\" /\u003e\n\nNote the following required attributes:\n\n- `ads:adSize`: Set this to the ad size you'd like to use. If you don't want to\n use the standard size defined by the constant, you can set a custom size\n instead. Example: `ads:adSize=\"320x50\"`.\n\n- `ads:adUnitId`: Set this to the ad unit in your app where ads are to be\n displayed. If you show banner ads in different activities, each would require\n an ad unit.\n\nCustom ad size\n\nIf you have Ad Manager reservation [line items](//support.google.com/admanager/answer/9405477) targeting a custom size, you can\ncreate an `AdSize` with a custom width and height that matches your line item. \n\nJava \n\n AdSize customAdSize = new AdSize(250, 250);\n AdManagerAdView adView = new AdManagerAdView(this);\n adView.setAdSizes(customAdSize);\n\nKotlin \n\n val customAdSize = AdSize(250, 250)\n val adView = AdManagerAdView(this)\n adView.setAdSizes(customAdSize)\n\n\u003cbr /\u003e\n\nMultiple ad sizes\n\nIf you want to target line items of multiple ad sizes in the same ad request,\n`AdManagerAdView` lets you set multiple ad sizes at once. \n\nJava \n\n AdManagerAdView adView = new AdManagerAdView(this);\n adView.setAdSizes(AdSize.BANNER, new AdSize(120, 20), new AdSize(250, 250));\n\nKotlin \n\n val adView = AdManagerAdView(this)\n adView.setAdSizes(AdSize.BANNER, AdSize(120, 20), AdSize(250, 250))\n\nThe `AdManagerAdView` defaults to the first ad size. Once the ad loads, the\n`AdManagerAdView` size changes to the loaded ad size. Your layout should\nbe able to automatically adapt to the new size.\n\nYou can also specify multiple ad sizes using the `ads:adSizes` attribute in your\nXML layout file: \n\n \u003ccom.google.android.gms.ads.admanager.AdManagerAdView\n android:id=\"@+id/multiple_ad_sizes_view\"\n android:layout_width=\"wrap_parent\"\n android:layout_height=\"wrap_content\"\n android:layout_alignParentBottom=\"true\"\n android:layout_centerHorizontal=\"true\"\n ads:adSizes=\"BANNER,120x20,250x250\"\n ads:adUnitId=\"\u003cvar translate=\"no\"\u003eAD_UNIT_ID\u003c/var\u003e\" /\u003e\n\nMultiple ad sizes example\n\n[Java](//github.com/googleads/googleads-mobile-android-examples/blob/main/java/advanced/APIDemo/app/src/main/java/com/google/android/gms/example/apidemo/AdManagerMultipleAdSizesFragment.java)\n[Kotlin](//github.com/googleads/googleads-mobile-android-examples/blob/main/kotlin/advanced/APIDemo/app/src/main/java/com/google/android/gms/example/apidemo/AdManagerMultipleAdSizesFragment.kt)\n\n\u003cbr /\u003e"]]