Как использовать сворачиваемые баннеры

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

Требования

Реализация

Убедитесь, что размер баннера соответствует тому, который пользователи должны видеть в обычном (свернутом) состоянии. Добавьте в запрос объявления параметр 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();
}

Обновление объявлений

Если в веб-интерфейсе Менеджера рекламы для баннеров в приложении настроено автоматическое обновление, то сворачиваемый баннер запрашивается только первый раз, а после обновления показывается объявление обычного размера. Это связано с тем, что показ сворачиваемого баннера при каждом обновлении может негативно повлиять на удобство использования.

Чтобы загрузить другой сворачиваемый баннер позднее в том же сеансе, вызовите его вручную с параметром сворачивания.

Как проверить, является ли загруженное объявление сворачиваемым

Чтобы повысить эффективность, в ответ на запросы сворачиваемых баннеров могут возвращаться обычные баннеры. Если запрос не загружается, а предыдущий баннер является сворачиваемым, 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. Объявления, показываемые с помощью медиации, выглядят как обычные не сворачиваемые баннеры.