Reklama pełnoekranowa z nagrodą to format reklamy zachęcającej użytkownika do jej obejrzenia, który umożliwia oferowanie nagród za oglądanie reklam wyświetlających się automatycznie w naturalnych momentach przejściowych w aplikacji. W przeciwieństwie do reklam z nagrodą użytkownicy nie muszą wyrazić zgody na wyświetlenie reklamy pełnoekranowej z nagrodą. Z tego przewodnika dowiesz się, jak zintegrować reklamy pełnoekranowe z nagrodą z AdMob z aplikacją na platformę Flutter.
Wymagania wstępne
- wtyczkę Flutter w wersji 1.1.0 lub nowszej,
- Kliknij Rozpocznij. W aplikacji Flutter powinien być już zaimportowany wtyczka Google Mobile Ads Flutter.
Zawsze testuj za pomocą reklam testowych
Podczas tworzenia i testowania aplikacji używaj reklam testowych zamiast reklam produkcyjnych. Jeśli tego nie zrobisz, Twoje konto może zostać zawieszone.
Najłatwiejszym sposobem wczytywania reklam testowych jest użycie specjalnego identyfikatora jednostki reklamowej testowej w przypadku reklam pełnoekranowych z nagrodą:
Android
ca-app-pub-3940256099942544/5354046379
iOS
ca-app-pub-3940256099942544/6978759866
Testowe jednostki reklamowe są skonfigurowane tak, aby zwracać reklamy testowe w przypadku każdego żądania. Możesz ich używać w swoich aplikacjach podczas kodowania, testowania i debugowania. Pamiętaj tylko, aby przed opublikowaniem aplikacji zastąpić je własnymi identyfikatorami jednostek reklamowych.
Wczytywanie reklamy
Poniższy przykład pokazuje, jak wczytać reklamę pełnoekranową z nagrodą:
Zastąp _adUnitId identyfikatorem swojej jednostki reklamowej.
Zdarzenia związane z reklamami pełnoekranowymi z nagrodą
Za pomocą FullScreenContentCallback
możesz nasłuchiwać zdarzeń związanych z cyklem życia, np. wyświetlenia lub zamknięcia reklamy. Ustaw wartość
RewardedInterstitialAd.fullScreenContentCallback
przed wyświetleniem reklamy, aby otrzymywać powiadomienia o tych zdarzeniach. Ten przykład implementuje każdą metodę i rejestruje komunikat w konsoli:
ad.fullScreenContentCallback = FullScreenContentCallback(
onAdShowedFullScreenContent: (ad) {
// Called when the ad showed the full screen content.
debugPrint('Ad showed full screen content.');
},
onAdFailedToShowFullScreenContent: (ad, err) {
// Called when the ad failed to show full screen content.
debugPrint('Ad failed to show full screen content with error: $err');
// Dispose the ad here to free resources.
ad.dispose();
},
onAdDismissedFullScreenContent: (ad) {
// Called when the ad dismissed full screen content.
debugPrint('Ad was dismissed.');
// Dispose the ad here to free resources.
ad.dispose();
},
onAdImpression: (ad) {
// Called when an impression occurs on the ad.
debugPrint('Ad recorded an impression.');
},
onAdClicked: (ad) {
// Called when a click is recorded for an ad.
debugPrint('Ad was clicked.');
},
);
Reklama displayowa
RewardedInterstitialAd
jest wyświetlany jako nakładka na całą zawartość aplikacji i jest umieszczony statycznie, więc nie można go dodać do drzewa widżetów Fluttera.
Możesz wybrać, kiedy chcesz wyświetlać reklamę, wywołując funkcję show()
.
RewardedInterstitialAd.show()
przyjmuje OnUserEarnedRewardCallback
, który jest wywoływany, gdy użytkownik zdobędzie nagrodę. Pamiętaj, aby wdrożyć tę funkcję i nagradzać użytkowników za oglądanie reklam.
_rewardedInterstitialAd?.show(
onUserEarnedReward: (AdWithoutView view, RewardItem rewardItem) {
debugPrint('Reward amount: ${rewardItem.amount}');
},
);
Po wywołaniu funkcji show()
reklamy Ad
wyświetlane w ten sposób nie można usunąć programowo i wymaga ona interakcji użytkownika. RewardedInterstitialAd
może być wyświetlany tylko raz. Kolejne wywołania funkcji show spowodują wywołanie funkcji onAdFailedToShowFullScreenContent
.
Reklamę należy usunąć, gdy dostęp do niej nie jest już potrzebny. Sprawdzona metoda dotycząca wywoływania funkcji dispose()
polega na używaniu wywołań zwrotnych FullScreenContentCallback.onAdDismissedFullScreenContent
i FullScreenContentCallback.onAdFailedToShowFullScreenContent
.
[Opcjonalnie] Weryfikowanie wywołań zwrotnych weryfikacji po stronie serwera
Aplikacje, które wymagają dodatkowych danych w wywołaniach zwrotnych weryfikacji po stronie serwera, powinny korzystać z funkcji danych niestandardowych w reklamach z nagrodą. Każda wartość ciągu znaków ustawiona w obiekcie reklamy z nagrodą jest przekazywana do parametru zapytania custom_data
wywołania zwrotnego SSV. Jeśli nie ustawisz wartości danych niestandardowych, wartość parametru zapytania custom_data
nie będzie obecna w wywołaniu zwrotnym SSV.
Poniższy przykładowy kod pokazuje, jak ustawić opcje SSV po wczytaniu reklamy pełnoekranowej z nagrodą:
Zastąp SAMPLE_CUSTOM_DATA_STRING swoimi danymi niestandardowymi.
Pełny przykład w GitHubie
Reklama pełnoekranowa z nagrodą