מודעות באנר שאפשר לכווץ הן מודעות באנר שמוצגות בהתחלה כשכבת-על גדולה יותר, עם כפתור שאפשר ללחוץ עליו כדי לכווץ אותן לגודל המקורי שהוגדר בבקשה להצגת המודעה.
מודעות מהסוג הזה נועדו לשפר את הביצועים של מודעות עוגן שקטנות יותר כשהן במצב הלא מורחב. במדריך הזה מוסבר איך לאפשר את ההצגה של מודעות כאלה במיקומים קיימים של מודעות באנר.
הקפידו להגדיר את גודל התצוגה של מודעת הבאנר לגודל שבו אתם רוצים שהמשתמשים יראו אותה במצב הרגיל (הממוזער). הבקשה להצגת מודעה צריכה לכלול את הפרמטר extras עם collapsible בתור המפתח ועם מיקום המודעה בתור הערך.
המיקום של מודעת הבאנר שאפשר לכווץ מגדיר איך האזור המורחב ממוקם יחסית למודעת הבאנר.
ערך של Placement
התנהגות
תרחיש שימוש מיועד
top
החלק העליון של המודעה במצב מלא מיושר עם החלק העליון של המודעה הממוזערת.
המודעה מוצבת בחלק העליון של המסך.
bottom
החלק התחתון של המודעה במצב מלא מיושר עם החלק התחתון של המודעה הממוזערת.
המודעה מוצבת בתחתית המסך.
אם המודעה שנטענת היא מודעת באנר שאפשר לכווץ, שכבת העל הניתנת לכיווץ תוצג בבאנר מיד אחרי שהיא תוצב בהיררכיית התצוגה.
Java
privatevoidloadCollapsibleBanner(){// Create an extra parameter that aligns the bottom of the expanded ad to// the bottom of the bannerView.Bundleextras=newBundle();extras.putString("collapsible","bottom");// Create an ad request.AdRequestadRequest=newAdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class,extras).build();// ...// Start loading a collapsible banner ad.adView.loadAd(adRequest);}
privatefunloadCollapsibleBanner(){// Create an extra parameter that aligns the bottom of the expanded ad to// the bottom of the bannerView.valextras=Bundle()extras.putString("collapsible","bottom")// Create an ad request.valadRequest=AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java,extras).build()// ...// Start loading a collapsible banner ad.adView.loadAd(adRequest)}
נסביר מה קורה באפליקציות שמוגדר בהן רענון אוטומטי של מודעות באנר בממשק האינטרנט של Ad Manager, אחרי שנשלחת בקשה להצגת מודעת באנר שאפשר לכווץ במיקום של מודעת באנר: בכל פעם שיתבצע רענון של המודעה, לא תישלח בקשה למודעה שאפשר לכווץ. הסיבה היא שאם בכל פעם שמרעננים את המודעה מציגים מודעת באנר שאפשר לכווץ, זה עלול לפגוע בחוויית המשתמש.
אם רוצים לטעון עוד מודעת באנר שאפשר לכווץ בשלב מאוחר יותר בסשן, אפשר לטעון מודעה באופן ידני עם בקשה שכוללת את הפרמטר collapsible.
איך בודקים אם מודעה שנטענה ניתנת לכיווץ
כדי למקסם את הביצועים, מודעות באנר שאי אפשר לכווץ יכולות להופיע בתגובה לבקשות להצגת מודעות באנר שאפשר לכווץ. כדי לבדוק אם מודעת הבאנר האחרונה שנטענה ניתנת לכיווץ, אפשר לקרוא לפונקציה isCollapsible. אם הבקשה לא נטענת ומודעת הבאנר הקודמת ניתנת לכיווץ, ה-API מחזיר true.
Java
publicvoidonAdLoaded(){Log.i(MainActivity.LOG_TAG,String.format("Ad loaded. adView.isCollapsible() is %b.",adView.isCollapsible()));}
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-09-05 (שעון 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."]]