מודעות באנר שאפשר לכווץ הן מודעות באנר שמוצגות בהתחלה כשכבת-על גדולה יותר, עם לחצן לכווץ אותן לגודל המקורי של מודעת הבאנר שביקשתם.
מודעות באנר מתקפלות נועדו לשפר את הביצועים של מודעות עוגן שהגודל שלהן קטן יותר. במדריך הזה מוסבר איך להפעיל מודעות באנר שאפשר לכווץ במיקומי באנר קיימים.
חשוב לוודא שהגודל של תצוגת הבאנר מוגדר בהתאם לגודל שבו אתם רוצים שהמשתמשים יראו את הבאנר במצב הרגיל (המכווץ). כוללים פרמטר extras בבקשה להצגת מודעה עם collapsible כמפתח ומיקום המודעה כערך.
המיקום של מודעת הבאנר שאפשר לכווץ מגדיר את נקודת העיגון של האזור המורחב למודעת הבאנר.
ערך של Placement
התנהגות
תרחיש שימוש מיועד
top
החלק העליון של המודעה המורחבת מיושר לחלק העליון של המודעה המכווצת.
המודעה מוצבת בחלק העליון של המסך.
bottom
החלק התחתון של המודעה המורחבת מיושר לחלק התחתון של המודעה המכווצת.
המודעה מוצבת בתחתית המסך.
אם המודעה שנטענה היא באנר שניתן לכיווץ, הבאנר יציג את שכבת העל הניתנת לכיווץ מיד אחרי שהוא יוצב בהיררכיית התצוגה.
Swift
funcloadBannerAd(){bannerView.adUnitID="ca-app-pub-3940256099942544/8388050270"bannerView.rootViewController=selfletviewWidth=FRAME_WIDTHbannerView.adSize=currentOrientationAnchoredAdaptiveBanner(width:viewWidth)letrequest=AdManagerRequest// Create an extra parameter that aligns the bottom of the expanded ad to// the bottom of the bannerView.letextras=Extras()extras.additionalParameters=["collapsible":"bottom"]request.register(extras)bannerView.load(request)}
Objective-C
-(void)loadBannerAd{self.bannerView.adUnitID=@"ca-app-pub-3940256099942544/8388050270";CGFloatviewWidth=FRAME_WIDTH;self.bannerView.adSize=GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(viewWidth);GADRequest*request=[GADRequestrequest];// Create an extra parameter that aligns the bottom of the expanded ad to the// bottom of the bannerView.GADExtras*extras=[[GADExtrasalloc]init];extras.additionalParameters=@{@"collapsible":@"bottom"};[requestregisterAdNetworkExtras:extras];
[self.bannerViewloadRequest:request];}
התנהגות רענון המודעות
באפליקציות שבהן מוגדר רענון אוטומטי של מודעות באנר בממשק האינטרנט של Ad Manager, כשנשלחת בקשה להצגת מודעת באנר שאפשר לכווץ במיקום של מודעת באנר, אחרי רענון לא יישלחו מאותו דף בקשות למודעות מאותו פורמט. הסיבה לכך היא שהצגת מודעת באנר שאפשר לכווץ בכל רענון עלולה לפגוע בחוויית המשתמש.
אם רוצים לטעון עוד מודעת באנר שאפשר לכווץ בשלב מאוחר יותר בסשן, אפשר לטעון מודעה באופן ידני עם בקשה שיש בה פרמטר של מודעה מהסוג הזה.
בדיקה אם אפשר לכווץ מודעה שנטענה
כדי למקסם את הביצועים, מודעות באנר שלא ניתן לכווץ יכולות להופיע בתגובה לבקשות להצגת מודעות באנר שאפשר לכווץ. מתקשרים אל isCollapsible כדי לבדוק אם הבאנר האחרון שנטען ניתן לכיווץ. אם הבקשה לא נטענת והבאנר הקודם ניתן לכיווץ, ה-API מחזיר true.
Swift
funcbannerViewDidReceiveAd(_bannerView:BannerView){print("The last loaded banner is \(bannerView.isCollapsible?"":"not") collapsible.")}
Objective-C
-(void)bannerViewDidReceiveAd:(GADBannerView*)bannerView{NSLog(@"The last loaded banner is %@collapsible.",(bannerView.isCollapsible?@"":@"not "));}
גישור
מודעות באנר שאפשר לכווץ זמינות רק לביקוש של Google. מודעות שמוצגות באמצעות תהליך בחירת הרשת (mediation) מוצגות כמודעות באנר רגילות שאי אפשר לכווץ.
[[["התוכן קל להבנה","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-02 (שעון UTC)."],[[["\u003cp\u003eCollapsible banner ads start as larger overlays and can be collapsed to a standard banner size, improving performance for smaller anchored ads.\u003c/p\u003e\n"],["\u003cp\u003eTo implement, define the banner view's collapsed size and include an extras parameter in the ad request specifying the placement (\u003ccode\u003etop\u003c/code\u003e or \u003ccode\u003ebottom\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eWhile auto-refresh is enabled, subsequent refreshes after a collapsible banner won't request another collapsible banner to avoid impacting user experience.\u003c/p\u003e\n"],["\u003cp\u003eYou can verify if a loaded ad is collapsible by calling \u003ccode\u003eisCollapsible\u003c/code\u003e on the banner view.\u003c/p\u003e\n"],["\u003cp\u003eDuring the beta period, collapsible banner ads are only supported for Google demand and not for ads served through mediation.\u003c/p\u003e\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/ios/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\nSwift \n\n func loadBannerAd() {\n bannerView.adUnitID = \"ca-app-pub-3940256099942544/8388050270\"\n bannerView.rootViewController = self\n let viewWidth = FRAME_WIDTH\n bannerView.adSize = currentOrientationAnchoredAdaptiveBanner(width: viewWidth)\n\n let request = AdManagerRequest\n\n // Create an extra parameter that aligns the bottom of the expanded ad to\n // the bottom of the bannerView.\n let extras = Extras()\n extras.additionalParameters = \\[\"collapsible\" : \"bottom\"\\]\n request.register(extras)\n\n bannerView.load(request)\n }\n\nObjective-C \n\n - (void)loadBannerAd {\n self.bannerView.adUnitID = @\"ca-app-pub-3940256099942544/8388050270\";\n CGFloat viewWidth = FRAME_WIDTH;\n self.bannerView.adSize = GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(viewWidth);\n\n GADRequest *request = [GADRequest request];\n\n // Create an extra parameter that aligns the bottom of the expanded ad to the\n // bottom of the bannerView.\n GADExtras \\*extras = \\[\\[GADExtras alloc\\] init\\];\n extras.additionalParameters = @{@\"collapsible\" : @\"bottom\"};\n \\[request registerAdNetworkExtras:extras\\];\n\n [self.bannerView loadRequest:request];\n }\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\nSwift \n\n func bannerViewDidReceiveAd(_ bannerView: BannerView) {\n print(\"The last loaded banner is \\(bannerView.isCollapsible ? \"\" : \"not\") collapsible.\")\n }\n\nObjective-C \n\n - (void)bannerViewDidReceiveAd:(GADBannerView *)bannerView {\n NSLog(@\"The last loaded banner is %@collapsible.\", (bannerView.isCollapsible ? @\"\" : @\"not \"));\n }\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."]]