Używanie banerów zwijanych

Banery zwijane to banery reklamowe, które początkowo wyświetlają się jako większa nakładka z przyciskiem umożliwiającym zwinięcie ich do pierwotnie żądanego rozmiaru. Zwijane banery reklamowe mają na celu zwiększenie skuteczności reklam zakotwiczonych, które są mniejsze. Z tego przewodnika dowiesz się, jak włączyć zwijane banery reklamowe w przypadku istniejących miejsc docelowych banerów.

Wymagania wstępne

Implementacja

Upewnij się, że widok banera jest zdefiniowany w rozmiarze, który ma być widoczny dla użytkowników w zwykłym (zwiniętym) stanie banera. Dołącz do żądania reklamy parametr dodatkowy z kluczem collapsible i wartością określającą miejsce docelowe reklamy.

Miejsce docelowe zwijania określa, jak rozwinięty obszar jest zakotwiczony w banerze reklamowym.

Wartość Placement Zachowanie Przewidywany przypadek użycia
top Górna krawędź rozwiniętej reklamy jest wyrównana do górnej krawędzi zwiniętej reklamy. Reklama jest umieszczana u góry ekranu.
bottom Dolna krawędź rozwiniętej reklamy jest wyrównana do dolnej krawędzi zwiniętej reklamy. Reklama jest umieszczana u dołu ekranu.

Jeśli wczytana reklama jest banerem zwijanym, po umieszczeniu w hierarchii widoków baner natychmiast wyświetla zwijaną nakładkę.

Java

private void loadCollapsibleBanner() {
  // Create an extra parameter that aligns the bottom of the expanded ad to
  // the bottom of the bannerView.
  Bundle extras = new Bundle();
  extras.putString("collapsible", "bottom");

  // Create an ad request.
  AdRequest adRequest =
      new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build();

  // ...

  // Start loading a collapsible banner ad.
  adView.loadAd(adRequest);
}

Kotlin

private fun loadCollapsibleBanner() {
  // Create an extra parameter that aligns the bottom of the expanded ad to
  // the bottom of the bannerView.
  val extras = Bundle()
  extras.putString("collapsible", "bottom")

  // Create an ad request.
  val adRequest =
    AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, extras).build()

  // ...

  // Start loading a collapsible banner ad.
  adView.loadAd(adRequest)
}

Zachowanie odświeżania reklam

W przypadku aplikacji, które konfigurują automatyczne odświeżanie banerów reklamowych w interfejsie usługi Ad Manager, gdy w przypadku miejsca docelowego banera zostanie wysłane żądanie dotyczące zwijanego banera reklamowego, kolejne odświeżenia reklamy nie będą żądać banerów zwijanych. Dzieje się tak, ponieważ wyświetlanie zwijanego banera przy każdym odświeżaniu może negatywnie wpłynąć na wygodę użytkowników.

Jeśli chcesz wczytać kolejny zwijany baner reklamowy w dalszej części sesji, możesz wczytać reklamę ręcznie, używając w żądaniu parametru zwijania.

Sprawdzanie, czy wczytana reklama jest zwijana

Aby zmaksymalizować skuteczność, w odpowiedzi na żądania dotyczące zwijanych banerów reklamowych mogą być zwracane banery niezwiązane ze zwijaniem. Aby sprawdzić, czy ostatnio wczytany baner jest zwijany, wywołaj isCollapsible. Jeśli wczytywanie żądania nie powiedzie się, a poprzedni baner jest zwijany, interfejs API zwróci wartość true.

Java

public void onAdLoaded() {
  Log.i(
      MainActivity.LOG_TAG,
      String.format("Ad loaded. adView.isCollapsible() is %b.", adView.isCollapsible()));
}

Kotlin

override fun onAdLoaded() {
  Log.i(
    MainActivity.LOG_TAG,
    "Ad loaded. adView.isCollapsible() is ${adView.isCollapsible}.",
  )
}

Mediacja

Banery zwijane są dostępne tylko w przypadku źródeł ofert reklamowych Google. Reklamy wyświetlane za pomocą mediacji są wyświetlane jako zwykłe banery niezwiązane ze zwijaniem.