折叠式横幅广告是一种横幅广告,最初会以较大的叠加层形式展示,并提供一个可将其收起为原始请求的横幅广告尺寸的按钮。折叠式横幅广告旨在提升尺寸较小的锚定广告的效果。本指南介绍了如何为现有横幅展示位置启用可收起的横幅广告。
前提条件
- 完成横幅广告入门指南。
实现
请确保横幅广告视图的定义尺寸与您希望用户在常规(已收起)横幅广告状态下看到的尺寸一致。在广告请求中添加 extras 参数,并将 collapsible
作为键,将广告展示位置作为值。
可收起的展示位置用于定义展开区域如何锚定到横幅广告。
Placement 值
|
行为 | 预期用例 |
---|---|---|
top |
展开式广告的顶部与收起式广告的顶部对齐。 | 广告位于屏幕顶部。 |
bottom |
展开的广告底部与收起的广告底部对齐。 | 广告位于屏幕底部。 |
如果所加载的广告是可收起的横幅广告,则该横幅广告在放置到视图层次结构中后,会立即显示可收起的叠加层。
void _loadAd() async {
// Replace these test ad units with your own ad units.
final String adUnitId = Platform.isAndroid
? 'ca-app-pub-3940256099942544/2014213617'
: 'ca-app-pub-3940256099942544/8388050270';
// Get the size before loading the ad.
final size = await AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(
MediaQuery.sizeOf(context).width.truncate());
if (size == null) {
// Unable to get the size.
return;
}
// Create an extra parameter that aligns the bottom of the expanded ad to the
// bottom of the banner ad.
const adRequest = AdRequest(extras: {
"collapsible": "bottom",
});
BannerAd(
adUnitId: adUnitId,
request: adRequest,
size: size,
listener: const BannerAdListener()
).load();
}
广告刷新行为
对于在 AdMob 网页界面中为横幅广告配置自动刷新的应用,当为横幅广告位请求折叠式横幅广告时,后续的广告刷新不会再请求折叠式横幅广告。这是因为,在每次刷新时都显示折叠式横幅广告可能会对用户体验产生负面影响。
如果您想在会话中的稍晚时间再加载一个折叠式横幅广告,您可以使用包含 collapsible 参数的请求手动加载广告。
中介
在 Beta 版测试期间,折叠式横幅广告仅适用于 Google 需求来源。通过中介投放的广告会以常规的不可收起的横幅广告形式展示。