Реклама с вознаграждением
Реклама с вознаграждением (Rewarded) — это полноэкранный рекламный формат, за просмотр которого пользователь получает бонус или награду (например: внутриигровые монеты, доступ к премиум-функциям, повтор попытки и т. д.).
Примечание
Пользователь принимает решение самостоятельно — не смотреть рекламу или дождаться получения награды.
Примечание
Пример работы всех типов форматов есть в демопроекте.
Пример создания рекламы с вознаграждением
import UIKit
import YandexMobileAds
class RewardedViewController: UIViewController {
private let adUnitID = "ad-unit-ID" // Use R-M-XXXXXX-Y or "demo-rewarded-yandex" (look for the description below)
private var rewardedAd: RewardedAd?
private lazy var rewardedAdLoader: RewardedAdLoader = {
let loader = RewardedAdLoader()
loader.delegate = self
return loader
}()
override func viewDidLoad() {
super.viewDidLoad()
loadAd()
}
private func loadAd() {
print("[Rewarded] Loading ad...")
let configuration = AdRequestConfiguration(adUnitID: adUnitID)
rewardedAdLoader.loadAd(with: configuration)
}
private func showAd() {
guard let ad = rewardedAd else {
print("[Rewarded] Ad is not loaded yet")
return
}
ad.show(from: self)
}
}
// MARK: - RewardedAdLoaderDelegate
extension RewardedViewController: RewardedAdLoaderDelegate {
func rewardedAdLoader(_ adLoader: RewardedAdLoader, didLoad rewardedAd: RewardedAd) {
print("[Rewarded] didLoad")
self.rewardedAd = rewardedAd
self.rewardedAd?.delegate = self
// showAd() укажите отображение креатива в месте приложения, где это необходимо
}
func rewardedAdLoader(_ adLoader: RewardedAdLoader, didFailToLoadWithError error: AdRequestError) {
print("[Rewarded] didFailToLoad: \(error.error)")
}
}
// MARK: - RewardedAdDelegate
extension RewardedViewController: RewardedAdDelegate {
func rewardedAdDidShow(_ rewardedAd: RewardedAd) {
print("[Rewarded] didShow")
}
func rewardedAdDidDismiss(_ rewardedAd: RewardedAd) {
print("[Rewarded] didDismiss")
}
func rewardedAdDidClick(_ rewardedAd: RewardedAd) {
print("[Rewarded] didClick")
}
func rewardedAd(_ rewardedAd: RewardedAd, didFailToShowWithError error: Error) {
print("[Rewarded] didFailToShow: \(error)")
}
func rewardedAd(_ rewardedAd: RewardedAd, didTrackImpressionWith impressionData: ImpressionData?) {
print("[Rewarded] didTrackImpression: \(impressionData?.rawData ?? "nil")")
}
func rewardedAd(_ rewardedAd: RewardedAd, didReward reward: Reward) {
print("[Rewarded] didReward: \(reward.amount) \(reward.type)")
}
}
Была ли статья полезна?
Предыдущая
Следующая