Quảng cáo biểu ngữ có thể thu gọn
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Quảng cáo biểu ngữ có thể thu gọn là quảng cáo biểu ngữ ban đầu được trình bày dưới dạng một lớp phủ lớn hơn, có nút để thu gọn về kích thước biểu ngữ được yêu cầu ban đầu.
Quảng cáo biểu ngữ có thể thu gọn được thiết kế để cải thiện hiệu suất của quảng cáo cố định có kích thước nhỏ hơn. Hướng dẫn này trình bày cách bật quảng cáo biểu ngữ có thể thu gọn cho các vị trí đặt biểu ngữ hiện có.

Điều kiện tiên quyết
Triển khai
Đảm bảo rằng chế độ xem biểu ngữ của bạn được xác định bằng kích thước mà bạn muốn người dùng nhìn thấy ở trạng thái biểu ngữ thông thường (đã được thu gọn). Đưa một thông số bổ sung vào yêu cầu quảng cáo với collapsible
làm khoá và vị trí của quảng cáo làm giá trị.
Vị trí có thể thu gọn xác định cách vùng mở rộng liên kết với quảng cáo biểu ngữ.
Giá trị Placement
|
Hành vi |
Trường hợp sử dụng dự kiến |
top |
Đầu quảng cáo mở rộng sẽ căn chỉnh với đầu quảng cáo thu gọn. |
Quảng cáo nằm ở đầu màn hình. |
bottom |
Phần dưới cùng của quảng cáo được mở rộng sẽ căn chỉnh với phần dưới cùng của quảng cáo bị thu gọn. |
Quảng cáo nằm ở cuối màn hình. |
Nếu quảng cáo được tải là biểu ngữ có thể thu gọn, thì biểu ngữ sẽ hiển thị lớp phủ có thể thu gọn ngay sau khi được đặt trong hệ phân cấp khung hiển thị.
Java
private void loadCollapsibleBanner() {
// Create an extra parameter that aligns the bottom of the expanded ad to
// the bottom of the bannerView.
Bundle extras = new Bundle();
extras.putString("collapsible", "bottom");
// Create an ad request.
AdRequest adRequest =
new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build();
// ...
// Start loading a collapsible banner ad.
adView.loadAd(adRequest);
}
Kotlin
private fun loadCollapsibleBanner() {
// Create an extra parameter that aligns the bottom of the expanded ad to
// the bottom of the bannerView.
val extras = Bundle()
extras.putString("collapsible", "bottom")
// Create an ad request.
val adRequest =
AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, extras).build()
// ...
// Start loading a collapsible banner ad.
adView.loadAd(adRequest)
}
Hành vi làm mới quảng cáo
Đối với những ứng dụng định cấu hình tính năng tự động làm mới cho quảng cáo biểu ngữ trong giao diện web Ad Manager, khi một quảng cáo biểu ngữ có thể thu gọn được yêu cầu cho một vùng quảng cáo biểu ngữ, thì các lượt làm mới quảng cáo tiếp theo sẽ không yêu cầu quảng cáo biểu ngữ có thể thu gọn. Lý do là vì việc hiển thị biểu ngữ có thể thu gọn trên mỗi lần làm mới có thể ảnh hưởng tiêu cực đến trải nghiệm người dùng.
Nếu muốn tải một quảng cáo biểu ngữ có thể thu gọn khác vào lúc khác trong phiên, bạn có thể tải quảng cáo theo cách thủ công bằng một yêu cầu chứa thông số có thể thu gọn.
Kiểm tra xem quảng cáo đã tải có thể thu gọn hay không
Quảng cáo biểu ngữ không thể thu gọn đủ điều kiện để trả về cho các yêu cầu về biểu ngữ có thể thu gọn nhằm tối đa hoá hiệu suất. Gọi isCollapsible
để kiểm tra xem biểu ngữ được tải gần đây nhất có thể thu gọn hay không. Nếu yêu cầu không tải được và biểu ngữ trước đó có thể thu gọn, thì API sẽ trả về giá trị true.
Java
public void onAdLoaded() {
Log.i(
MainActivity.LOG_TAG,
String.format("Ad loaded. adView.isCollapsible() is %b.", adView.isCollapsible()));
}
Kotlin
override fun onAdLoaded() {
Log.i(
MainActivity.LOG_TAG,
"Ad loaded. adView.isCollapsible() is ${adView.isCollapsible}.",
)
}
Quảng cáo biểu ngữ có thể thu gọn chỉ dành cho nhu cầu của Google. Quảng cáo được phân phát thông qua hoạt động dàn xếp sẽ hiển thị dưới dạng quảng cáo biểu ngữ thông thường, không thể thu gọn.
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-09-02 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-09-02 UTC."],[[["\u003cp\u003eCollapsible banner ads are initially larger overlays that can shrink to a standard banner size, enhancing the performance of smaller, anchored ads.\u003c/p\u003e\n"],["\u003cp\u003eTo enable, define your banner view's collapsed size and include an extra parameter in the ad request specifying the placement (\u003ccode\u003etop\u003c/code\u003e or \u003ccode\u003ebottom\u003c/code\u003e) for the expanded region.\u003c/p\u003e\n"],["\u003cp\u003eAuto-refresh is disabled for collapsible banners after the initial load to prioritize user experience; manual requests with the collapsible parameter are needed for subsequent collapsible ads.\u003c/p\u003e\n"],["\u003cp\u003eYou can verify if a loaded ad is collapsible using the \u003ccode\u003eisCollapsible\u003c/code\u003e method, which returns true even if the request fails but the previous banner was collapsible.\u003c/p\u003e\n"],["\u003cp\u003eCurrently, collapsible banner ads are exclusively supported for Google demand during the beta period; mediated ads will display as regular banners.\u003c/p\u003e\n"]]],["Collapsible banner ads display as a large overlay initially, then collapse to the requested banner size. To implement, define the desired collapsed banner size and add an \"extras\" parameter to the ad request, setting \"collapsible\" with the desired placement (\"top\" or \"bottom\"). If the loaded ad is collapsible, it will show the overlay upon entering the view hierarchy. Subsequent ad refreshes do not request collapsible banners, but they can be loaded manually. Use `isCollapsible` to verify if the loaded banner is collapsible. Mediation will not show collapsible banners.\n"],null,["Select platform: [Android](/ad-manager/mobile-ads-sdk/android/banner/collapsible \"View this page for the Android platform docs.\") [iOS](/ad-manager/mobile-ads-sdk/ios/banner/collapsible \"View this page for the iOS platform docs.\") [Unity](/ad-manager/mobile-ads-sdk/unity/banner/collapsible \"View this page for the Unity platform docs.\") [Flutter](/ad-manager/mobile-ads-sdk/flutter/banner/collapsible \"View this page for the Flutter platform docs.\")\n\n\u003cbr /\u003e\n\nCollapsible banner ads are banner ads that are initially presented as a larger\noverlay, with a button to collapse them to the originally requested banner size.\nCollapsible banner ads are intended to improve performance of anchored ads that\nare otherwise a smaller size. This guide shows how to turn on collapsible banner\nads for existing banner placements.\n\nPrerequisites\n\n- Complete the [banner ads get started guide](/ad-manager/mobile-ads-sdk/android/banner).\n\nImplementation\n\nMake sure your banner view is defined with the size you would like users to see\nin the regular (collapsed) banner state. Include an extras parameter in the ad\nrequest with `collapsible` as the key and the placement of the ad as the value.\n\nThe collapsible placement defines how the expanded region anchors to the banner\nad.\n\n| `Placement` value | Behavior | Intended use case |\n|-------------------|-------------------------------------------------------------------------|-----------------------------------------------|\n| `top` | The top of the expanded ad aligns to the top of the collapsed ad. | The ad is placed at the top of the screen. |\n| `bottom` | The bottom of the expanded ad aligns to the bottom of the collapsed ad. | The ad is placed at the bottom of the screen. |\n\nIf the loaded ad is a collapsible banner, the banner shows the collapsible\noverlay immediately once it's placed in the view hierarchy.\n\nJava \n\n private void loadCollapsibleBanner() {\n // Create an extra parameter that aligns the bottom of the expanded ad to\n // the bottom of the bannerView.\n Bundle extras = new Bundle();\n extras.putString(\"collapsible\", \"bottom\");\n\n // Create an ad request.\n AdRequest adRequest =\n new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build();\n\n // ...\n\n // Start loading a collapsible banner ad.\n adView.loadAd(adRequest);\n } \n https://github.com/googleads/googleads-mobile-android-examples/blob/ccc290a583d7f552bdcf81ea76adc05beaa43f0b/java/advanced/APIDemo/app/src/main/java/com/google/android/gms/example/apidemo/CollapsibleBannerFragment.java#L63-L91\n\nKotlin \n\n private fun loadCollapsibleBanner() {\n // Create an extra parameter that aligns the bottom of the expanded ad to\n // the bottom of the bannerView.\n val extras = Bundle()\n extras.putString(\"collapsible\", \"bottom\")\n\n // Create an ad request.\n val adRequest =\n AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, extras).build()\n\n // ...\n\n // Start loading a collapsible banner ad.\n adView.loadAd(adRequest)\n } \n https://github.com/googleads/googleads-mobile-android-examples/blob/ccc290a583d7f552bdcf81ea76adc05beaa43f0b/kotlin/advanced/APIDemo/app/src/main/java/com/google/android/gms/example/apidemo/CollapsibleBannerFragment.kt#L58-L86\n\n\u003cbr /\u003e\n\nAds refreshing behavior\n\nFor apps that configure auto-refresh for banner ads in the\nAd Manager web interface, when a collapsible banner ad\nis requested for a banner slot, subsequent ad refreshes won't request\ncollapsible banner ads. This is because showing a collapsible banner on every\nrefresh could have a negative impact on user experience.\n\nIf you want to load another collapsible banner ad later in the session, you can\nload an ad manually with a request containing the collapsible parameter.\n\nCheck if a loaded ad is collapsible\n\nNon-collapsible banner ads are eligible to return for collapsible banner\nrequests to maximize performance. Call `isCollapsible` to check if the last\nbanner loaded is collapsible. If the request fails to load and the previous\nbanner is collapsible, the API returns true. \n\nJava \n\n public void onAdLoaded() {\n Log.i(\n MainActivity.LOG_TAG,\n String.format(\"Ad loaded. adView.isCollapsible() is %b.\", adView.isCollapsible()));\n } \n https://github.com/googleads/googleads-mobile-android-examples/blob/ccc290a583d7f552bdcf81ea76adc05beaa43f0b/java/advanced/APIDemo/app/src/main/java/com/google/android/gms/example/apidemo/CollapsibleBannerFragment.java#L79-L83\n\nKotlin \n\n override fun onAdLoaded() {\n Log.i(\n MainActivity.LOG_TAG,\n \"Ad loaded. adView.isCollapsible() is ${adView.isCollapsible}.\",\n )\n } \n https://github.com/googleads/googleads-mobile-android-examples/blob/ccc290a583d7f552bdcf81ea76adc05beaa43f0b/kotlin/advanced/APIDemo/app/src/main/java/com/google/android/gms/example/apidemo/CollapsibleBannerFragment.kt#L73-L78\n\n\u003cbr /\u003e\n\nMediation\n\nCollapsible banner ads are only available for Google demand. Ads served through\nmediation show as normal, non-collapsible banner ads."]]