Сворачиваемые баннеры – это баннеры, которые сначала показываются в виде большого оверлея с кнопкой, позволяющей свернуть их до стандартного размера. Сворачиваемые баннеры предназначены для повышения эффективности фиксированных объявлений, которые в противном случае имели бы меньший размер. В этом руководстве рассказывается, как включить сворачиваемые баннеры для существующих мест размещения.

Требования
- Ознакомьтесь с руководством по началу работы с баннерами.
Реализация
Убедитесь, что размер баннера соответствует тому, который пользователи должны видеть в обычном (свернутом) состоянии. Добавьте в запрос объявления параметр extras, указав collapsible в качестве ключа и место размещения объявления в качестве значения.
Место размещения сворачиваемого баннера определяет, как развернутая область прикрепляется к баннеру.
На сумму Placement
|
Поведение | Предполагаемый вариант использования |
|---|---|---|
top |
Верхний край раскрытого объявления совпадает с верхним краем свернутого объявления. | Объявление размещено в верхней части экрана. |
bottom |
Нижний край раскрытого объявления выравнивается по нижнему краю свернутого. | Объявление размещено в нижней части экрана. |
Если загруженное объявление является сворачиваемым баннером, то сразу после размещения в иерархии View на баннере показывается сворачиваемый оверлей:
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 для баннеров настроено автоматическое обновление, то сворачиваемый баннер запрашивается только первый раз, а после обновления показывается объявление обычного размера. Это связано с тем, что показ сворачиваемого баннера при каждом обновлении может негативно повлиять на удобство использования.
Чтобы загрузить другой сворачиваемый баннер позднее в том же сеансе, вызовите его вручную с параметром сворачивания.
Как проверить, является ли загруженное объявление сворачиваемым
Чтобы повысить эффективность, в ответ на запросы сворачиваемых баннеров могут возвращаться обычные баннеры. Если запрос не загружается, а предыдущий баннер является сворачиваемым, API возвращает значение true. Чтобы проверить, является ли последний загруженный баннер сворачиваемым, вызовите метод isCollapsible:
BannerAd(
// ...
listener: BannerAdListener(
onAdLoaded: (ad) {
final bannerAd = ad as BannerAd;
final isCollapsible = bannerAd.isCollapsible;
print('The last loaded banner is ${isCollapsible ? "" : "not"} collapsible.');
},
),
).load();
Медиация
Сворачиваемые баннеры доступны только для источников спроса Google. Объявления, показываемые с помощью медиации, выглядят как обычные не сворачиваемые баннеры.