Полноэкранная реклама
В Appodeal полноэкранная реклама разделена на два типа: статическая и видео с возможностью пропуска.
Оба типа запрашиваются параллельно и для показа будет выбран тип с большей стоимостью показа. Статическая реклама - статический полноэкранный баннер. Видео реклама - полноэкранное видео с возможностью пропуска через 5 секунд.
Вы можете использовать наше демо приложение в качестве примера по интеграции.
Демо приложение
Ручное Кэширование
По умолчанию включен автоматический режим загрузки рекламных креативов: Appodeal SDK начинает загрузку полноэкранной рекламы сразу после инициализации SDK.
Следующий рекламный креатив начинает загружаться после того как был закрыт предыдущий.
Для отключения автоматического режима загрузки полноэкранной рекламы используйте следующий код перед инициализацией SDK:
- Swift
- Objective C
Appodeal.setAutocache(false, types: .interstitial)
[Appodeal setAutocache: NO types:AppodealAdTypeInterstitial];
Для загрузки полноэкранной рекламы в ручном режиме используйте метод:
- Swift
- Objective C
Appodeal.cacheAd(.interstitial)
[Appodeal cacheAd:AppodealAdTypeInterstitial];
Более подробную информацию о ручном кешировании вы можете найти в нашем FAQ.
Проверка Загрузки
Вы можете проверить статус загрузки рекламы перед показом. Метод ниже возвращает булевое значение, указывающее, была ли загружена реклама.
- Swift
- Objective C
Appodeal.isReadyForShow(with: .interstitial)
[Appodeal isReadyForShowWithStyle: AppodealShowStyleInterstitial];
Мы рекомендуем проверять статус загрузки перед показом рекламы.
Отображение
- Swift
- Objective C
Appodeal.showAd(AppodealShowStyle.interstitial, rootViewController: self)
[Appodeal showAd:AppodealShowStyleInterstitial rootViewController:self];
Методы Обратного Вызова
Методы обратного вызова позволяют отслеживать различные события в жизненном цикле рекламного креатива, например, момент, когда пользователь нажал на рекламу или закрыл ее. Для их вызова установите следующее значение делегата:
- Swift
- Objective C
// set delegate
Appodeal.setInterstitialDelegate(self)
// set delegate
[Appodeal setInterstitialDelegate:self];
Обычно класс, который работает с Полноэкранными объявлениями,
одновременно является и классом делегата, поэтому в качестве свойства
делегата можно указать self
.
Теперь вы можете использовать следующие методы обратного вызова:
- Swift
- Objective C
extension YourViewController: AppodealInterstitialDelegate {
// Method called when precache (cheap and fast load) or usual interstitial view did load
//
// - Warning: If you want show only expensive ad, ignore this callback call with precache equal to YES
// - Parameter precache: If precache is YES it's mean that precache loaded
func interstitialDidLoadAdIsPrecache(_ precache: Bool) {
}
// Method called if interstitial mediation failed
func interstitialDidFailToLoadAd() {
}
// Method called if interstitial mediation was success, but ready ad network can't show ad or
// ad presentation was to frequently according your placement settings
func interstitialDidFailToPresent() {
}
// Method called when interstitial will display on screen
func interstitialWillPresent() {
}
// Method called after interstitial leave screeen
func interstitialDidDismiss() {
}
// Method called when user tap on interstitial
func interstitialDidClick() {
}
// Method called when interstitial did expire and could not be shown
func interstitialDidExpired(){
}
}
- (void)interstitialDidLoadAdIsPrecache:(BOOL)precache; //interstitial was loaded (precache flag shows if the loaded ad is precache)
- (void)interstitialDidFailToLoadAd; //interstitial failed to load
- (void)interstitialDidFailToPresent; //interstitial was loaded but failed to present (may be caused by inner ad network error, placement settings or invalid creative)
- (void)interstitialWillPresent; //interstitial was loaded and will present
- (void)interstitialDidDismiss; //interstitial was closed
Все методы обратного вызова вызываются в главном потоке.
Плейсменты
Appodeal SDK позволяет вам отмечать показы различными тегами с помощью плейсментов. Для использования данной функции вам необходимо создать плейсмент в настройках вашего приложения. Больше информации о плейсментах в нашем руководстве.
- Swift
- Objective C
Appodeal.showAd(.interstitial, forPlacement: placement, rootViewController: self)
[Appodeal showAd:AppodealShowStyleInterstitial forPlacement:placement rootViewController:self];
Если загруженный креатив не может быть показан для настроек выбранного плейсмента, показа не будет. При включении автоматического режима загрузки рекламных креативов, SDK начнет грузить новый рекламный креатив, что может повлиять на display rate вашего приложения. В подобных случаях мы рекомендуем проверять возможность показа с помощью метода canShow:
- Swift
- Objective C
Appodeal.canShow(.interstitial, forPlacement: placement)
[Appodeal canShow:AppodealAdTypeInterstitial forPlacement:placement];
Вы можете настраивать логику показа для каждого плейсмента.
Если в приложении нет настроенных плейсментов, или вы пробуете показать рекламу для плейсмента, которого не существует в настройках вашего приложения, каждый показ будет записан в плейсмент с именем 'default' и будут применены его настройки.
Настройки плейсментов влияют только на показ рекламы и не влияют на ее загрузку.
Получение Прогнозируемого eCPM
Этот метод возвращает ожидаемый eCPM для загруженного креатива. Цена высчитывается из исторических данных для конкретного рекламного блока.
- Swift
- Objective C
Appodeal.predictedEcpm(for: .interstitial)
[Appodeal predictedEcpmForAdType: AppodealAdTypeInterstitial];