Полноэкранная реклама
Внимание.
Это архивная версия документации. Актуальная документация по всем платформам находится здесь.
Полноэкранная реклама (Interstitial) — это настраиваемое объявление, отображаемое на весь экран и реагирующее на нажатие.
Чтобы подключить рекламу:
Добавьте импорт:
import YandexMobileAds
#import <YandexMobileAds/YandexMobileAds.h>
Создайте
@property
, где будет храниться ссылка на баннер:var interstitialAd: YMAInterstitialAd!
@property (nonatomic, strong) YMAInterstitialAd *interstitialAd;
Произведите инициализацию и предзагрузку рекламы методом -loadWithRequest:.
С помощью класса YMAAdRequest передайте код, полученный в интерфейсе Adfox (подробнее смотрите в помощи по Adfox).// Код из интерфейса Adfox для работы с прямыми кампаниями. var parameters = [String: String]() parameters["adf_ownerid"] = "<example>" parameters["adf_p1"] = "<example>" parameters["adf_p2"] = "<example>" parameters["adf_pfc"] = "<example>" parameters["adf_pfb"] = "<example>" parameters["adf_pt"] = "<example>" parameters["adf_pd"] = "<example>" parameters["adf_pw"] = "<example>" parameters["adf_pv"] = "<example>" parameters["adf_prr"] = "<example>" parameters["adf_pdw"] = "<example>" parameters["adf_pdh"] = "<example>" let request = YMAMutableAdRequest() request.age = age request.contextQuery = contextQuery request.contextTags = contextTags request.gender = gender request.location = location request.parameters = parameters interstitialAd = YMAInterstitialAd(adUnitID: "<AdUnitID>") interstitialAd.delegate = self interstitial.loadAd(with: request)
// Код из интерфейса Adfox для работы с прямыми кампаниями. NSMutableDictionary *parameters = [[NSMutableDictionary alloc] init]; parameters[@"adf_ownerid"] = @"<example>"; parameters[@"adf_p1"] = @"<example>"; parameters[@"adf_p2"] = @"<example>"; parameters[@"adf_pfc"] = @"<example>"; parameters[@"adf_pfb"] = @"<example>"; parameters[@"adf_pt"] = @"<example>"; parameters[@"adf_pd"] = @"<example>"; parameters[@"adf_pw"] = @"<example>"; parameters[@"adf_pv"] = @"<example>"; parameters[@"adf_prr"] = @"<example>"; parameters[@"adf_pdw"] = @"<example>"; parameters[@"adf_pdh"] = @"<example>"; YMAMutableAdRequest *request = [[YMAMutableAdRequest alloc] init]; request.age = age; request.contextQuery = contextQuery; request.contextTags = contextTags; request.gender = gender; request.location = location; request.parameters = parameters; self.interstitialAd = [[YMAInterstitialAd alloc] initWithAdUnitID:<ваш уникальный AdUnitID>]; self.interstitialAd.delegate = self; [self.interstitialAd loadAdWithRequest:request];
Начните отображение объявления, используя данный метод:
func interstitialAdDidLoad(_ interstitialAd: YMAInterstitialAd) { interstitialAd.present(from: self) }
- (void)interstitialAdDidLoad:(YMAInterstitialAd *)interstitialAd { [interstitialAd presentFromViewController:self]; }
Опционально можно включить логирование с помощью метода +enableLogging. Если показ рекламы не был засчитан, в консоли появится сообщение.
Чтобы определить причины, по которым реклама работает некорректно, используйте методы
func interstitialAdDidFail(toLoad interstitialAd: YMAInterstitialAd, error: Error)
func interstitialAdDidFail(toPresent interstitialAd: YMAInterstitialAd, error: Error)
- (void)interstitialAdDidFailToLoad:(YMAInterstitialAd *)interstitialAd error:(NSError *)error;
- (void)interstitialAdDidFailToPresent:(YMAInterstitialAd *)interstitialAd error:(NSError *)error;
Описание ошибок доступно в разделе YMAAdErrorCode.
Чтобы посмотреть, как реклама будет отображаться в приложении, используйте демонстрационный
AdUnitID
: demo-interstitial-yandex