إعلانات البانر القابلة للتصغير
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
اختيار النظام الأساسي:
Android
iOS
Unity
Flutter
إعلانات البانر القابلة للتصغير هي إعلانات بانر يتم عرضها في البداية كتراكب أكبر، مع زر لتصغيرها إلى حجم البانر المطلوب في الأصل.
تهدف إعلانات البانر القابلة للتصغير إلى تحسين أداء الإعلانات الثابتة التي تكون عادةً بحجم أصغر. يوضّح هذا الدليل كيفية تفعيل "إعلانات البانر القابلة للتصغير" لمواضع إعلانات البانر الحالية.

المتطلبات الأساسية
التنفيذ
تأكَّد من تحديد عرض البانر بالحجم الذي تريد أن يظهر للمستخدمين
في حالة إعلان البانر العادي (المصغَّر). أدرِج مَعلمة إضافية في طلب الإعلان مع collapsible
كمفتاح وموضع الإعلان كقيمة.
يحدّد موضع الإعلان القابل للتصغير طريقة تثبيت المنطقة الموسّعة في إعلان البانر.
قيمة Placement
|
السلوك |
حالة الاستخدام المقصودة |
top |
تتم محاذاة أعلى الإعلان الموسّع مع أعلى الإعلان المصغّر. |
يتم وضع الإعلان في أعلى الشاشة. |
bottom |
تتم محاذاة أسفل الإعلان الموسّع مع أسفل الإعلان المصغّر. |
يتم وضع الإعلان في أسفل الشاشة. |
إذا كان الإعلان الذي تم تحميله عبارة عن بانر قابل للتصغير، يعرض البانر التراكب القابل للتصغير فور وضعه في بنية العرض.
Swift
func loadBannerAd() {
bannerView.adUnitID = "ca-app-pub-3940256099942544/8388050270"
bannerView.rootViewController = self
let viewWidth = FRAME_WIDTH
bannerView.adSize = currentOrientationAnchoredAdaptiveBanner(width: viewWidth)
let request = Request
// Create an extra parameter that aligns the bottom of the expanded ad to
// the bottom of the bannerView.
let extras = Extras()
extras.additionalParameters = ["collapsible" : "bottom"]
request.register(extras)
bannerView.load(request)
}
Objective-C
- (void)loadBannerAd {
self.bannerView.adUnitID = @"ca-app-pub-3940256099942544/8388050270";
CGFloat viewWidth = FRAME_WIDTH;
self.bannerView.adSize = GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(viewWidth);
GADRequest *request = [GADRequest request];
// Create an extra parameter that aligns the bottom of the expanded ad to the
// bottom of the bannerView.
GADExtras *extras = [[GADExtras alloc] init];
extras.additionalParameters = @{@"collapsible" : @"bottom"};
[request registerAdNetworkExtras:extras];
[self.bannerView loadRequest:request];
}
سلوك إعادة تحميل الإعلانات
بالنسبة إلى التطبيقات التي تضبط ميزة "إعادة التحميل التلقائي" لإعلانات البانر في واجهة الويب الخاصة بمنصة AdMob، عند طلب "إعلان بانر قابل للتصغير" لعرضه في خانة إعلان بانر، لن تطلب عمليات إعادة تحميل الإعلانات اللاحقة "إعلانات بانر قابلة للتصغير". ويرجع ذلك إلى أنّ عرض "إعلان بانر قابل للتصغير" في كل عملية إعادة تحميل قد يؤثّر سلبًا في تجربة المستخدم.
إذا أردت تحميل "إعلان بانر قابل للتصغير" آخر لاحقًا في الجلسة، يمكنك تحميل إعلان يدويًا من خلال طلب يحتوي على المَعلمة القابلة للتصغير.
التحقّق ممّا إذا كان الإعلان الذي تم تحميله قابلاً للتصغير
تكون "إعلانات البانر غير القابلة للتصغير" مؤهَّلة للظهور عند طلب "إعلانات بانر قابلة للتصغير" من أجل تحقيق أفضل أداء. اتّصِل بالرقم isCollapsible
للتحقّق ممّا إذا كان آخر بانر تم تحميله قابلاً للتصغير. إذا تعذّر تحميل الطلب وكان البانر السابق قابلاً للتصغير، تعرض واجهة برمجة التطبيقات القيمة "صحيح".
Swift
func bannerViewDidReceiveAd(_ 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. تظهر الإعلانات المعروضة من خلال التوسّط كإعلانات بانر عادية غير قابلة للتصغير.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-08-27 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-27 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eCollapsible banner ads initially appear larger and can be collapsed by users to the original banner size, improving the performance of 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 collapsible placement (\u003ccode\u003etop\u003c/code\u003e or \u003ccode\u003ebottom\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eWhile auto-refresh is enabled, subsequent refreshes won't automatically request collapsible banners to maintain a positive user experience; manual requests are needed to load another collapsible banner.\u003c/p\u003e\n"],["\u003cp\u003eYou can verify if a loaded ad is collapsible using the \u003ccode\u003eisCollapsible\u003c/code\u003e property, which also returns true if the request fails but the previous banner was collapsible.\u003c/p\u003e\n"],["\u003cp\u003eCurrently, collapsible banner ads are only supported for Google demand during the beta period; mediated ads will display as regular banners.\u003c/p\u003e\n"]]],["Collapsible banner ads expand from a smaller banner size to a larger overlay. To implement, define the desired collapsed banner size and include an \"extras\" parameter in the ad request with the key \"collapsible\" and the desired `top` or `bottom` placement value. Subsequent ad refreshes won't request collapsible banners automatically. Developers can manually load collapsible ads or check if a loaded ad is collapsible using the `isCollapsible` method. Collapsible banner ads are only available for google demand.\n"],null,["Select platform: [Android](/admob/android/banner/collapsible \"View this page for the Android platform docs.\") [iOS](/admob/ios/banner/collapsible \"View this page for the iOS platform docs.\") [Unity](/admob/unity/banner/collapsible \"View this page for the Unity platform docs.\") [Flutter](/admob/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](/admob/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 = Request\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\nAdMob 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."]]