Межстраничная реклама — это полноэкранные объявления, которые закрывают интерфейс приложения до тех пор, пока пользователь их не закроет. Обычно они отображаются в естественных точках перехода в процессе работы приложения, например, между действиями или во время паузы между уровнями в игре. Когда приложение показывает межстраничную рекламу, пользователь может либо нажать на объявление и перейти к следующему шагу, либо закрыть его и вернуться в приложение. Пример из практики .
В этом руководстве показано, как интегрировать межстраничную рекламу в приложения для Android и iOS с помощью Google Mobile Ads C++ SDK.
Предварительные требования
- Завершить. Начать .
- (Только для Android) Знание работы со ссылками
jobjectJNI (см. советы по работе с JNI в Android ).
Всегда проводите тестирование с помощью тестовых объявлений.
При разработке и тестировании приложений обязательно используйте тестовые объявления, а не реальные, рабочие объявления. Несоблюдение этого правила может привести к блокировке вашего аккаунта.
Самый простой способ загрузить тестовые объявления — использовать наш специальный идентификатор тестового рекламного блока для межстраничной рекламы, который различается в зависимости от платформы устройства:
- Android:
ca-app-pub-3940256099942544/1033173712 - iOS:
ca-app-pub-3940256099942544/4411468910
Они специально настроены на возврат тестовых объявлений для каждого запроса, и вы можете свободно использовать их в своих приложениях во время кодирования, тестирования и отладки. Просто убедитесь, что вы заменили его на свой собственный идентификатор рекламного блока перед публикацией приложения.
Для получения дополнительной информации о том, как работают тестовые объявления в Mobile Ads SDK, см. раздел «Тестовые объявления» .
Выполнение
Основные шаги по интеграции межстраничной рекламы:
- Загрузить рекламу.
- Зарегистрируйтесь для участия в обратном звонке.
- Отобразить объявление и управлять событиями его жизненного цикла.
Настройка InterstitialAd
Межстраничные объявления отображаются в объектах InterstitialAd , поэтому первым шагом к интеграции межстраничных объявлений в ваше приложение является создание и инициализация объекта InterstitialAd .
Добавьте следующий заголовочный файл в код вашего приложения на C++:
#include "firebase/gma/interstial_ad.h"
Объявите и создайте экземпляр объекта
InterstitialAd:firebase::gma::InterstitialAd* interstitial_ad; interstitial_ad = new firebase::gma::InterstitialAd();
Инициализируйте экземпляр
InterstitialAd, используя родительский элемент представления, преобразованный в типAdParent. Родительский элемент представления представляет собой ссылку на объект JNIjobject, указывающую на AndroidActivity, или указатель на iOSUIView.// my_ad_parent is a jobject reference to an Android Activity or // a pointer to an iOS UIView. firebase::gma::AdParent ad_parent = static_cast<firebase::gma::AdParent>(my_ad_parent); firebase::Future<void> result = interstitial_ad->Initialize(ad_parent);В качестве альтернативы сохранению будущего значения в качестве переменной, вы можете периодически проверять статус операции инициализации, вызывая метод
InitializeLastResult()для объектаInterstitialAd. Это может быть полезно для отслеживания процесса инициализации в глобальном игровом цикле.// Monitor the status of the future in your game loop: firebase::Future<void> result = interstitial_ad->InitializeLastResult(); if (result.status() == firebase::kFutureStatusComplete) { // Initialization completed. if(future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization successful. } else { // An error has occurred. } } else { // Initialization on-going. }
Для получения дополнительной информации о работе с firebase::Future см. раздел «Использование Future для отслеживания статуса завершения вызовов методов» .
Загрузить рекламу
Загрузка рекламы осуществляется с помощью метода LoadAd() объекта InterstitialAd . Для работы метода load необходимо инициализировать объект InterstitialAd , а также иметь идентификатор рекламного блока и объект AdRequest . Возвращается firebase::Future , который можно использовать для отслеживания состояния и результата операции загрузки.
Следующий код показывает, как загрузить рекламу после успешной инициализации InterstitialAd :
firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result;
load_ad_result