Реклама с вознаграждением
Это архивная версия документации. Актуальная документация по всем платформам находится здесь.
Реклама с вознаграждением (Rewarded Ad) — настраиваемое объявление, отображаемое на весь экран. За просмотр такой рекламы пользователь получает вознаграждение.
- Добавление
Rewarded Ad
в проект - Загрузка рекламы
- Показ рекламы
- События рекламы с вознаграждением
- Очистка рекламы
Добавление Rewarded Ad
в проект
Чтобы подключить рекламу, создайте объект RewardedAd
в скрипте (на C#), который прикреплен к GameObject
.
... using YandexMobileAds; using YandexMobileAds.Base; ... public class YandexMobileAdsRewardedAdDemoScript : MonoBehaviour { private RewardedAd rewardedAd; ... private void RequestRewardedAd() { string adUnitId = "YOUR_adUnitId"; rewardedAd = new RewardedAd(adUnitId); } ... }
Скопировано
Конструктор RewardedAd
содержит параметр adUnitId
— уникальный идентификатор, который выдается в Партнерском интерфейсе и имеет вид: R-M-XXXXXX-Y..
В интерфейсе Мобильной медиации AdUnitId
называется ID места.
Загрузка рекламы
После создания и настройки объекта класса RewardedAd
необходимо загрузить рекламу. Для загрузки рекламы используйте метод LoadAd
, принимающий в качестве параметра объект AdRequest
.
... private void RequestRewardedAd() { ... AdRequest request = new AdRequest.Builder().Build(); rewardedAd.LoadAd(request); ... } ...
Скопировано
Показ рекламы
После того, как реклама загружена, ее можно показать:
... private void ShowRewardedAd() { if (this.rewardedAd.IsLoaded()) { rewardedAd.Show(); } else { Debug.Log("Rewarded Ad is not ready yet"); } } ...
Скопировано
События рекламы с вознаграждением
Чтобы отслеживать события, происходящие в рекламе с вознаграждением, зарегистрируйте делегата для соответствующего EventHandler
, как показано ниже:
... private void RequestRewardedAd() { ... rewardedAd.OnRewardedAdLoaded += HandleRewardedAdLoaded; rewardedAd.OnRewardedAdFailedToLoad += HandleRewardedAdFailedToLoad; rewardedAd.OnReturnedToApplication += HandleReturnedToApplication; rewardedAd.OnLeftApplication += HandleLeftApplication; rewardedAd.OnAdClicked += HandleAdClicked; rewardedAd.OnRewardedAdShown += HandleRewardedAdShown; rewardedAd.OnRewardedAdDismissed += HandleRewardedAdDismissed; rewardedAd.OnImpression += HandleImpression; rewardedAd.OnRewarded += HandleRewarded; rewardedAd.OnRewardedAdFailedToShow += HandleRewardedAdFailedToShow; ... } public void HandleRewardedAdLoaded(object sender, EventArgs args) { MonoBehaviour.print("HandleRewardedAdLoaded event received"); } public void HandleRewardedAdFailedToLoad(object sender, AdFailureEventArgs args) { MonoBehaviour.print( "HandleRewardedAdFailedToLoad event received with message: " + args.Message); } public void HandleReturnedToApplication(object sender, EventArgs args) { MonoBehaviour.print("HandleReturnedToApplication event received"); } public void HandleLeftApplication(object sender, EventArgs args) { MonoBehaviour.print("HandleLeftApplication event received"); } public void HandleAdClicked(object sender, EventArgs args) { MonoBehaviour.print("HandleAdClicked event received"); } public void HandleRewardedAdShown(object sender, EventArgs args) { MonoBehaviour.print("HandleRewardedAdShown event received"); } public void HandleRewardedAdDismissed(object sender, EventArgs args) { MonoBehaviour.print("HandleRewardedAdDismissed event received"); } public void HandleImpression(object sender, ImpressionData impressionData) { var data = impressionData == null ? "null" : impressionData.rawData; MonoBehaviour.print("HandleImpression event received with data: " + data); } public void HandleRewarded(object sender, Reward args) { MonoBehaviour.print("HandleRewarded event received: amout = " + args.amount + ", type = " + args.type); } public void HandleRewardedAdFailedToShow(object sender, AdFailureEventArgs args) { MonoBehaviour.print( "HandleRewardedAdFailedToShow event received with message: " + args.Message); }
Скопировано
Очистка рекламы
Когда объект рекламы больше не нужен, его можно удалить. Для этого вызовите метод Destroy
:
rewardedAd.Destroy();
Скопировано