Reklamy pełnoekranowe zakrywają interfejs aplikacji, w której się wyświetlają. Wyświetlają się zwykle w naturalnych momentach przejściowych w aplikacji, np. między działaniami lub podczas przerwy między poziomami gry. Gdy aplikacja wyświetla reklamę pełnoekranową, użytkownik może ją kliknąć, przejść do miejsca docelowego lub zamknąć ją i wrócić do aplikacji.
Z tego przewodnika dowiesz się, jak zintegrować reklamy pełnoekranowe z aplikacją Flutter.
Zawsze testuj za pomocą reklam testowych
Podczas tworzenia i testowania aplikacji używaj reklam testowych, a nie aktywnych wersji produkcyjnej. Jeśli tego nie zrobisz, Twoje konto może zostać zawieszone.
Najłatwiejszym sposobem wczytywania reklam testowych jest użycie naszego dedykowanego identyfikatora testowej jednostki reklamowej na potrzeby reklam pełnoekranowych:
/6499/example/interstitial
Testowe jednostki reklamowe są tak skonfigurowane, aby zwracać reklamy testowe w odpowiedzi na każde żądanie. Możesz ich swobodnie używać w swoich aplikacjach podczas kodowania, testowania i debugowania. Pamiętaj, aby przed opublikowaniem aplikacji zastąpić je własnymi identyfikatorami jednostek reklamowych.
Wczytywanie reklamy
Ten przykład wczytuje reklamę pełnoekranową:
class InterstitialExampleState extends State<InterstitialExample> { AdManagerInterstitialAd? _interstitialAd; // TODO: replace this test ad unit with your own ad unit. final adUnitId = '/6499/example/interstitial'; /// Loads an interstitial ad. void loadAd() { AdManagerInterstitialAd.load( adUnitId: adUnitId, request: const AdManagerAdRequest(), adLoadCallback: AdManagerInterstitialAdLoadCallback( // Called when an ad is successfully received. onAdLoaded: (ad) { debugPrint('$ad loaded.'); // Keep a reference to the ad so you can show it later. _interstitialAd = ad; }, // Called when an ad request failed. onAdFailedToLoad: (LoadAdError error) { debugPrint('AdManagerInterstitialAd failed to load: $error'); }, )); } }
Zdarzenia reklam pełnoekranowych
Za pomocą interfejsu FullScreenContentCallback
możesz nasłuchiwać zdarzeń cyklu życia, np. dotyczących wyświetlenia lub zamknięcia reklamy. Przed wyświetleniem reklamy ustaw parametr AdManagerInterstitialAd.fullScreenContentCallback
, aby otrzymywać powiadomienia o tych zdarzeniach. W tym przykładzie implementujemy wszystkie metody:
class InterstitialExampleState extends State<InterstitialExample> { AdManagerInterstitialAd? _interstitialAd; // TODO: replace this test ad unit with your own ad unit. final adUnitId = '/6499/example/interstitial'; /// Loads an interstitial ad. void loadAd() { AdManagerInterstitialAd.load( adUnitId: adUnitId, request: const AdManagerAdRequest(), adLoadCallback: AdManagerInterstitialAdLoadCallback( // Called when an ad is successfully received. onAdLoaded: (ad) { ad.fullScreenContentCallback = FullScreenContentCallback( // Called when the ad showed the full screen content. onAdShowedFullScreenContent: (ad) {}, // Called when an impression occurs on the ad. onAdImpression: (ad) {}, // Called when the ad failed to show full screen content. onAdFailedToShowFullScreenContent: (ad, err) { // Dispose the ad here to free resources. ad.dispose(); }, // Called when the ad dismissed full screen content. onAdDismissedFullScreenContent: (ad) { // Dispose the ad here to free resources. ad.dispose(); }, // Called when a click is recorded for an ad. onAdClicked: (ad) {}); debugPrint('$ad loaded.'); // Keep a reference to the ad so you can show it later. _interstitialAd = ad; }, // Called when an ad request failed. onAdFailedToLoad: (LoadAdError error) { debugPrint('AdManagerInterstitialAd failed to load: $error'); }, )); } }
Wyświetlanie reklam pełnoekranowych
Element AdManagerInterstitialAd
jest wyświetlany jako Overlay
nad całą treścią aplikacji i jest umieszczony statycznie. Nie można go więc dodać do drzewa widżetów Flutter. Możesz wybrać, kiedy reklama ma się wyświetlać, dzwoniąc pod numer show()
.
_interstitiaAd.show();
Po wywołaniu metody show()
nie można automatycznie zamknąć wyświetlonego w ten sposób elementu Ad
. Wymaga to danych wejściowych użytkownika. Element AdManagerInterstitialAd
można wyświetlić tylko raz. Kolejne wywołania będą aktywować kod onAdFailedToShowFullScreenContent
.
Reklamę należy zutylizować, gdy dostęp do niej nie jest już potrzebny. Sprawdzoną metodą wywołania dispose()
jest użycie wywołań zwrotnych FullScreenContentCallback.onAdDismissedFullScreenContent
i FullScreenContentCallback.onAdFailedToShowFullScreenContent
.
Znakomicie. Twoja aplikacja jest już gotowa do wyświetlania reklam pełnoekranowych.