Używanie zwijanych banerów reklamowych

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 dotychczasowych 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 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 nakładkę zwijaną.

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

Zachowanie odświeżania reklam

W przypadku aplikacji, które konfigurują automatyczne odświeżanie banerów reklamowych w interfejsie internetowym Ad Managera, gdy w przypadku boksu na baner zostanie wysłane żądanie dotyczące zwijanego banera reklamowego, kolejne odświeżenia reklamy nie będą żądać banerów zwijanych. Wynika to z faktu, że 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 banerów zwijanych mogą się wyświetlać banery, których nie można zwinąć. Aby sprawdzić, czy ostatnio wczytany baner jest zwijany, wywołaj isCollapsible. Jeśli wczytywanie żądania się nie powiedzie, a poprzedni baner jest zwijany, interfejs API zwróci wartość true.

BannerAd(
  // ...
  listener: BannerAdListener(
    onAdLoaded: (ad) {
      final bannerAd = ad as BannerAd;
      final isCollapsible = bannerAd.isCollapsible;
      print('The last loaded banner is ${isCollapsible ? "" : "not"} collapsible.');
    },
  ),
).load();

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, których nie można zwinąć.