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 banera. Zwijane banery reklamowe mają na celu zwiększenie skuteczności reklam zakotwiczonych, które w przeciwnym razie byłyby 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. W żądaniu reklamy uwzględnij 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 część rozwiniętej reklamy jest wyrównana do górnej części zwiniętej reklamy. Reklama znajduje się u góry ekranu.
bottom Dolna część rozwiniętej reklamy jest wyrównana do dolnej części zwiniętej reklamy. Reklama znajduje się u dołu ekranu.

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

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)
}

Odświeżanie reklam

W przypadku aplikacji, które konfigurują automatyczne odświeżanie banerów reklamowych w interfejsie internetowym AdMob, 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. Wynika to z tego, że wyświetlanie banera zwijanego przy każdym odświeżaniu może negatywnie wpłynąć na wrażenia użytkownika.

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 przypadku żądań dotyczących 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, niezwiązane ze zwijaniem banery reklamowe.