Zwijane banery reklamowe to banery, 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 mają mniejszy rozmiar. Z tego przewodnika dowiesz się, jak włączyć zwijane banery reklamowe w przypadku istniejących miejsc docelowych banerów.

Wymagania wstępne
- Zapoznaj się z przewodnikiem dla początkujących dotyczącym banerów reklamowych.
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ą odpowiadającą miejscu docelowemu reklamy.
Miejsce docelowe zwijania określa, jak rozwinięty obszar jest zakotwiczony do banera reklamowego.
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 zwijanym banerem, 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();
}
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 zwijanego banera 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 niezwijane. Aby sprawdzić, czy ostatni 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.
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
Zwijane banery reklamowe są dostępne tylko w przypadku popytu Google. Reklamy wyświetlane za pomocą mediacji są wyświetlane jako zwykłe, niezwijane banery reklamowe.