Інтеграція міжсторінкової реклами: стратегія та реалізація

Реалізація міжсторінкової реклами (Interstitial) у мобільному додатку Ви впровадили Interstitial, але ARPU падає, а відтік зростає? З імовірністю 80% причина — технічні помилки: витік Activity на Android або невірний rootViewController на iOS. Розберемо, як правильно інтегрувати рекламу, щоб отри

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Інтеграція міжсторінкової реклами: стратегія та реалізація
Середній
від 1 дня до 3 днів

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    894
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Реалізація міжсторінкової реклами (Interstitial) у мобільному додатку

Ви впровадили Interstitial, але ARPU падає, а відтік зростає? З імовірністю 80% причина — технічні помилки: витік Activity на Android або невірний rootViewController на iOS. Розберемо, як правильно інтегрувати рекламу, щоб отримувати дохід без втрати аудиторії.

Interstitial — повноекранний формат, який приносить у 5–15 разів більше виручки, ніж банер, але ціна помилки вища. Один недоречний показ — і користувач видаляє додаток. Наш досвід — 30+ проєктів з інтеграцією реклами на iOS та Android. Ми — команда з 5-річним досвідом інтеграції мобільної реклами.

Правильне управління життєвим циклом реклами та стратегія показу реклами з попереднім завантаженням оголошень є ключовими для успішної інтеграції міжсторінкової реклами (interstitial ads).

Interstitial потребує особливого підходу

На відміну від банерів, Interstitial повністю перекриває інтерфейс. Кожен показ — пауза в роботі користувача. Якщо реклама з'являється при завантаженні, введенні тексту або старті рівня, до 30% користувачів йдуть. Правильна стратегія — показувати після завершення дії, коли користувач готовий зробити паузу. Для ігор це кінець рівня, для утиліт — після збереження файлу або відправки форми.

Уникнення типових помилок при інтеграції

Головна технічна проблема на Android — витік Activity. Патерн «завантажити в singleton, показати з будь-якої Activity» виглядає зручно, але InterstitialAd тримає reference на Context. Якщо Activity знищена, а об'єкт живий — отримуємо leak + WindowManager$BadTokenException при спробі показати на неіснуючому вікні.

Правильний підхід: завантажуємо в ViewModel або presenter з applicationContext, показуємо через активну Activity, яку передаємо через WeakReference або через лямбду в момент показу:

Код прикладу (Kotlin)
class InterstitialManager(private val appContext: Context) { private var interstitialAd: InterstitialAd? = null fun load() { InterstitialAd.load(appContext, AD_UNIT_ID, AdRequest.Builder().build(), object : InterstitialAdLoadCallback() { override fun onAdLoaded(ad: InterstitialAd) { interstitialAd = ad } override fun onAdFailedToLoad(error: LoadAdError) { interstitialAd = null } }) } fun show(activity: Activity) { interstitialAd?.show(activity) ?: load() } } 

Після show() об'єкт стає недійсним — потрібен новий load(). Забуте завантаження після показу — часта причина «реклама показалася один раз і все». На iOS GADInterstitialAd — не багаторазовий об'єкт. Один інстанс — один показ. Повторний виклик presentFromRootViewController: дає помилку. Створюємо новий інстанс після кожного показу. Важливий rootViewController: передавайте актуальний VC, а не window?.rootViewController. Якщо зверху є модальний контролер, interstitial потрібно показувати поверх нього: presentedViewController ?? rootViewController.

Кейс із практики: що ми змінили в проєкті з 1M+ встановлень

Один із клієнтів — гра-головоломка з 1 000 000 завантажень. Interstitial показувався при кожному переході між рівнями. Відтік досяг 40%, ARPU впав на 15%. Ми провели аудит коду: на Android виявлено витік Activity (сінглтон тримав посилання на застарілий контекст), на iOS — неправильний rootViewController (оголошення показувалося на UIApplication.shared.keyWindow, хоча зверху висів модальний SKStoreProductViewController). Виправили:

  • Прибрали сінглтон, впровадили Application-рівневий менеджер з WeakReference<Activity>.
  • Додали попереднє завантаження наступного оголошення одразу після показу.
  • Збільшили cooldown з 10 секунд до 2 хвилин.
  • Додали аналіз onAdDismissedFullScreenContent для відновлення ігрового процесу.

Результат: відтік знизився на 35%, дохід від реклами зріс на 20% за місяць, а окупність інвестицій (ROI) склала 300%. Вартість впровадження окупається протягом 2–3 місяців за рахунок зростання доходу та зниження відтоку.

Чому попереднє завантаження критичне для UX?

Interstitial потрібно завантажувати заздалегідь — запит до рекламної мережі займає 1–3 секунди. Якщо завантажувати в момент показу, пауза буде помітною. Попереднє завантаження покращує UX в 3 рази порівняно зі завантаженням у момент показу. Правильно: завантажити одразу після попереднього показу або при старті рівня. На iOS об'єкт GADInterstitialAd також не багаторазовий, тому після показу необхідно завантажити новий. Докладніше в документації Google AdMob.

Стратегія показу: що входить у роботу

Ми розробляємо стратегію показу під ваш додаток. Ключові параметри:

Параметр Рекомендація
Cooldown між показами Мінімум 30–60 секунд, краще 3–5 хвилин
Точки показу Завершення рівня, збереження, перехід у меню
Погані точки Натискання Back, відкриття сповіщення, перший запуск
Попереднє завантаження Одразу після попереднього показу або при старті рівня
Обробка подій onAdImpression, onAdDismissed, onAdFailedToShow

Порівняння: Interstitial vs Banner

Interstitial приносить у 5–15 разів більше доходу за показ, але потребує більш ретельного налаштування. Банери менш нав'язливі, але дохід з них нижчий. Оптимально комбінувати обидва формати: банери на постійних екранах, Interstitial у точках переходу.

Процес впровадження під ключ

  1. Аналітика та аудит — вивчаємо архітектуру додатка, версії SDK, існуючу рекламу. Заміряємо поточні метрики (fill rate, CTR, ARPU).
  2. Розробка стратегії — визначаємо точки показу, cooldown, частоту, винятки. Враховуємо сценарії користувачів.
  3. Інтеграція коду — реалізуємо менеджер реклами з попереднім завантаженням, обробкою помилок, витоками. Пишемо код під iOS (Swift) та Android (Kotlin).
  4. Тестування — проводимо на 5+ пристроях з різними версіями ОС. Перевіряємо edge case: відсутність мережі, швидкий перехід між екранами, сповіщення.
  5. Деплой та аналітика — вбудовуємо відстеження подій (onAdImpression, onAdDismissed). Підключаємо логування в Firebase або Amplitude.
Етап Тривалість
Аудит 0.5 дн
Стратегія 1 дн
Інтеграція 1–3 дн
Тестування 1 дн
Документація 0.5 дн

Терміни: від 1 до 5 днів залежно від складності. Вартість впровадження розраховується індивідуально.

Обробка подій

Мінімальний набір для аналітики:

  • onAdImpression / adDidRecordImpression — зараховуємо показ
  • onAdDismissedFullScreenContent — продовжуємо користувацький сценарій
  • onAdFailedToShowFullScreenContent — логуємо помилку, не блокуємо UX

Ці колбеки допомагають відстежувати ефективність і швидко реагувати на проблеми. Додатково рекомендуємо передавати метадані (рівень, дія користувача) в аналітику.

Що дає правильна стратегія?

При грамотному налаштуванні заповнюваність досягає 95%, а відтік користувачів знижується на 20–30%. Згідно з рекомендаціями Google AdMob, Interstitial має використовуватися лише в природних паузах. Зв'яжіться з нами — ми підберемо оптимальне рішення для вашого додатка. Замовте впровадження Interstitial з урахуванням best practices — отримайте стабільний дохід без втрати аудиторії.