Фиксированные адаптивные баннеры

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

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

При работе с адаптивными баннерами учитывайте, что их размер всегда будет постоянным для определенного устройства и ширины экрана. После того как вы протестируете макет на определенном устройстве, вы можете быть уверены, что размер объявления не изменится. Однако размер баннера может меняться в зависимости от устройства. Поэтому мы рекомендуем убедиться, что макет может вместить объявления разной высоты. В редких случаях в адаптивный блок может не поместиться креатив полного размера, и тогда в центре блока будет размещен креатив стандартного размера.

Когда использовать адаптивные баннеры

Адаптивные баннеры призваны заменить стандартные баннеры размером 320 x 50 и смарт-баннеры.

Баннеры этих размеров часто используются как фиксированные и закрепляются в верхней или нижней части экрана. Соотношение сторон адаптивных фиксированных баннеров будет таким же, как у стандартных объявлений размером 320 x 50. Это можно увидеть на скриншотах ниже.


Баннер 320 x 50

Смарт-баннер

Адаптивный баннер

Адаптивный баннер лучше использует доступное пространство на экране. Кроме того, адаптивные баннеры лучше смарт-баннеров, поскольку:

  • Они заполняют доступную ширину, а не всю ширину экрана, что позволяет разместить их в оптимальной области.

  • Оптимальная высота выбирается для каждого устройства отдельно, а не задается постоянной для всех устройств, что позволяет уменьшить влияние фрагментации устройств.

Примечания по реализации

При добавлении адаптивных баннеров в приложение учитывайте следующие моменты:

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

  • Чтобы при показе объявлений небольшого размера, которые не заполняют рекламное место, соблюдать правила AdMob, убедитесь, что фон рекламного представления непрозрачный.

  • Убедитесь, что вы используете последнюю версию Google Mobile Ads C++ SDK. Для медиации используйте последнюю версию каждого адаптера.

  • Адаптивные баннеры лучше всего работают, когда занимают всю доступную ширину. В большинстве случаев она равна ширине экрана устройства. Обязательно учитывайте безопасные зоны.

  • Google Mobile Ads C++ SDK возвращает оптимизированную высоту объявления для заданной ширины в firebase::gma::AdSize.

  • Существует три способа получить размер адаптивного баннера: для горизонтальной и вертикальной ориентации, а также для текущей ориентации во время выполнения.

  • Размер, возвращаемый для определенной ширины на определенном устройстве, всегда будет одинаковым. Поэтому, протестировав макет на устройстве, вы можете быть уверены, что размер объявления не изменится.

  • Высота фиксированного баннера не может превышать 15% высоты устройства и быть меньше 50 точек.

Начало работы

Чтобы реализовать простой адаптивный фиксированный баннер:

  1. Получение размера адаптивного баннера. Это значение будет использоваться для запроса адаптивного баннера. Чтобы получить адаптивный размер объявления, убедитесь, что:

    1. Получите ширину используемого устройства или задайте собственную ширину, если вы не хотите использовать всю ширину экрана.

    2. Используйте подходящие статические методы класса AdSize, например GetCurrentOrientationAnchoredAdaptiveBannerAdSize(uint32_t width), чтобы получить адаптивный объект AdSize для выбранной ориентации.

    3. Вызовите Initialize() на AdView с помощью адаптивного AdSize, который вы создали.

      Полный пример приведен ниже.

  2. Создайте объект AdRequest и загрузите баннер с помощью метода loadAd() в подготовленном представлении объявления, как при обычном запросе баннера.

Образец кода

Ниже приведен пример тега AdView, который загружает адаптивный баннер.

// Determine view width in pixels based on your app's current width on the
// device's screen. This process will vary depending on which windowing toolkit
// you're using.

firebase::gma::AdSize adaptive_ad_size =
      AdSize::GetCurrentOrientationAnchoredAdaptiveBannerAdSize(view_width);

// my_ad_parent is a reference to an iOS UIView or an Android Activity.
// This is the parent UIView or Activity of the banner view.
firebase::gma::AdParent ad_parent =
  static_cast<firebase::gma::AdParent>(my_ad_parent);
firebase::Future<void> result =
  ad_view->Initialize(ad_parent, kBannerAdUnit, adaptive_ad_size);

В этом случае функция GetCurrentOrientationAnchoredAdaptiveBannerAdSize(uint32_t width) используется для получения размера баннера в фиксированном положении для текущей ориентации интерфейса. Чтобы предварительно загрузить закрепленный баннер в определенной ориентации, используйте соответствующую функцию из GetPortraitAnchoredAdaptiveBannerAdSize(uint32_t width) и GetLandscapeAnchoredAdaptiveBannerAdSize(uint32_t width).