Сворачиваемые баннеры

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

Требования

Реализация

Убедитесь, что в представлении баннера задан размер, который пользователи должны видеть в обычном (свернутом) состоянии. Включите в запрос объявления параметр extras, в котором в качестве ключа будет указано collapsible, а в качестве значения – место размещения объявления.

Место размещения сворачиваемого баннера определяет, как развернутая область прикрепляется к баннеру.

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

Если загруженное объявление – сворачиваемый баннер, то сразу после размещения в иерархии View он будет показан в виде сворачиваемого оверлея.

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 для баннеров настроено автоматическое обновление, то сворачиваемый баннер запрашивается только первый раз, а после обновления показывается объявление обычного размера. Это связано с тем, что показ сворачиваемого баннера при каждом обновлении может негативно повлиять на удобство использования.

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

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

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