Это краткое руководство предназначено для издателей и разработчиков, которые хотят использовать AdMob для монетизации приложения, созданного с помощью Firebase. Если вы не планируете включать Firebase в свое приложение, вместо этого посетите отдельное руководство AdMob .
Если вы еще этого не сделали, узнайте обо всех преимуществах совместного использования AdMob , Firebase и Google Analytics .
Если вы впервые читаете это руководство, рекомендуем скачать и следовать ему, используя тестовое приложение Google Mobile Ads C++ SDK .
Прежде чем начать
Если у вас еще нет проекта Firebase и приложения Firebase, следуйте руководству по началу работы с Firebase: Добавьте Firebase в свой проект C++ .
Убедитесь, что Google Analytics включен в вашем проекте Firebase:
Если вы создаете новый проект Firebase, включите Google Analytics во время рабочего процесса создания проекта.
Если у вас есть существующий проект Firebase, в котором не включен Google Analytics , вы можете включить Google Analytics на вкладке «Интеграции» вашего аккаунта.
Шаг 1. Настройте приложение в своем аккаунте AdMob
Зарегистрируйте каждый вариант платформы вашего приложения как приложение AdMob . Войдите или зарегистрируйте учетную запись AdMob . Зарегистрируйте каждый вариант вашего приложения на платформе в AdMob . На этом этапе создается приложение AdMob с уникальным идентификатором приложения AdMob , который понадобится вам далее в этом руководстве.
Вам будет предложено добавить Mobile Ads SDK в ваше приложение. Подробные инструкции по выполнению этой задачи вы найдете далее в этом руководстве. Свяжите каждое из ваших приложений AdMob с соответствующим приложением Firebase. Этот шаг не является обязательным, но настоятельно рекомендуется. Узнайте больше о преимуществах включения пользовательских показателей и связи ваших приложений AdMob с Firebase. Для каждого варианта платформы выполните следующие два шага на панели управления приложениями вашего аккаунта AdMob : Включите пользовательские метрики , чтобы AdMob мог обрабатывать и отображать тщательно подобранные аналитические данные в вашем аккаунте AdMob . Это также необходимая настройка для связи вашего приложения AdMob с Firebase. Свяжите свое приложение AdMob с существующим проектом Firebase и соответствующим приложением Firebase. Убедитесь, что вы вводите то же имя пакета (Android) или идентификатор пакета (iOS), что и для приложения Firebase. Найдите название или идентификатор пакета вашего приложения Firebase на карточке «Ваши приложения » Настройки проекта . >
Шаг 2. Добавьте идентификатор приложения AdMob в свое приложение.
Андроид
AndroidManifest.xml
вашего приложения, добавив тег <meta-data>
, как показано ниже.
<manifest> <application> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID " android:value="ADMOB_APP_ID "/> </application> </manifest>
iOS
В файл Info.plist
вашего приложения добавьте ключ GADApplicationIdentifier
со строковым значением вашего идентификатора приложения AdMob .
Вы можете внести это изменение программно:
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~1458002511 --> <key>GADApplicationIdentifier</key> <string>ADMOB_APP_ID </string>
Или отредактируйте его в редакторе списка свойств:
Шаг 3. Добавьте Google Mobile Ads SDK
Поскольку SDK Google Mobile Ads C++ находится в пространстве имен firebase::gma
, загрузите Firebase C++ SDK , а затем разархивируйте его в выбранный вами каталог.
Firebase C++ SDK не зависит от платформы, но требует настройки библиотеки для конкретной платформы.
Андроид
В файле
gradle.properties
вашего проекта укажите расположение разархивированного SDK:systemProp.firebase_cpp_sdk.dir=
FULL/PATH/TO/SDK В файл
settings.gradle
вашего проекта добавьте следующее содержимое:def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir') gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir" includeBuild "$firebase_cpp_sdk_dir"
В файл Gradle вашего модуля (на уровне приложения) (обычно
app/build.gradle
) добавьте следующий контент, который включает зависимость библиотеки для Google Mobile Ads C++ SDK.android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependency for the Google Mobile Ads C++ SDK apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { gma }
В файл
CMakeLists.txt
вашего проекта добавьте следующее содержимое.# Add Firebase libraries to the target using the function from the SDK. add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) # Add the Google Mobile Ads C++ SDK. # The Firebase C++ library `firebase_app` is required, # and it must always be listed last. set(firebase_libs firebase_gma firebase_app ) target_link_libraries(${target_name} "${firebase_libs}")
Синхронизируйте приложение, чтобы убедиться, что все зависимости имеют необходимые версии.
Все готово! Ваше приложение C++ настроено на использование Google Mobile Ads C++ SDK.
iOS
Действия, описанные в этом разделе, представляют собой пример добавления Google Mobile Ads C++ SDK в ваш проект iOS.
Получите CocoaPods версии 1 или новее, выполнив:
sudo gem install cocoapods --pre
Добавьте модуль Google Mobile Ads из разархивированного SDK.
Создайте подфайл, если у вас его еще нет:
cd
YOUR_APP_DIRECTORY pod init
В свой подфайл добавьте модуль для Google Mobile Ads C++ SDK:
pod 'Google-Mobile-Ads-SDK'
Установите модуль, затем откройте файл
.xcworkspace
в Xcode.pod install
open
YOUR_APP .xcworkspaceДобавьте в проект следующие фреймворки из Firebase C++ SDK:
-
xcframeworks/firebase.xcframework
-
xcframeworks/firebase_gma.xcframework
-
Все готово! Ваше приложение C++ настроено на использование Google Mobile Ads C++ SDK.
Шаг 4. Инициализируйте Google Mobile Ads SDK
Перед загрузкой рекламы инициализируйте Mobile Ads SDK, вызвав firebase::gma::Initialize()
.
Этот вызов возвращает firebase::Future
, который завершается после завершения инициализации (или после 30-секундного таймаута). Вызывайте этот метод только один раз и как можно раньше, в идеале при запуске приложения.
Вот пример вызова Initialize()
:
// Initialize the Google Mobile Ads library firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(jni_env, j_activity, &result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
// Initialize the Google Mobile Ads library. firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(&result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
Используйте Future
для отслеживания статуса завершения вызова метода.
Future
предоставляет вам возможность определить статус завершения вызовов асинхронных методов.
Например, когда ваше приложение вызывает firebase::gma::Initialize()
, создается и возвращается новый firebase::Future
. Затем ваше приложение может опросить status()
объекта Future
, чтобы определить, когда инициализация завершена. После завершения ваше приложение может вызвать result()
для получения итогового значения AdapterInitializationStatus
.
Методы, возвращающие Future
имеют соответствующий метод «последнего результата», который приложения могут использовать для получения самого последнего Future
для данного действия. Например, firebase::gma::Initialize()
есть соответствующий метод firebase::gma::InitializeLastResult()
, который возвращает Future
, который ваше приложение может использовать для проверки статуса последнего вызова firebase::gma::Initialize()
.
Если статус Future
завершен и его код ошибки — firebase::gma::kAdErrorCodeNone
, то операция завершилась успешно.
Вы также можете зарегистрировать обратные вызовы, которые будут вызываться при завершении Future
. В некоторых случаях обратный вызов будет выполняться в другом потоке, поэтому убедитесь, что ваш код поточно-безопасен. Этот фрагмент кода использует указатель на функцию для обратного вызова:
// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
/*user_data=*/nullptr);
// The OnCompletion callback function.
static void OnCompletionCallback(
const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
// Called when the Future is completed for the last call to firebase::gma::Initialize().
// If the error code is firebase::gma::kAdErrorCodeNone,
// then the SDK has been successfully initialized.
if (future.error() == firebase::gma::kAdErrorCodeNone) {
// success!
} else {
// failure.
}
}
Шаг 5. Выберите формат рекламы для использования в вашем приложении.
AdMob предлагает множество различных форматов объявлений, поэтому вы можете выбрать тот, который лучше всего соответствует пользовательскому опыту вашего приложения. Нажмите кнопку формата объявления, чтобы просмотреть подробные инструкции по его реализации в документации AdMob .
Баннер
Прямоугольные объявления, которые появляются вверху или внизу экрана устройства.
Рекламные баннеры остаются на экране, пока пользователи взаимодействуют с приложением, и могут автоматически обновляться через определенный период времени. Если вы новичок в мобильной рекламе, это отличное место для начала.
Внедрить баннерную рекламуМежстраничный
Полноэкранная реклама, закрывающая интерфейс приложения до тех пор, пока пользователь его не закроет.
Межстраничную рекламу лучше всего использовать в естественных паузах в процессе выполнения приложения, например, между уровнями игры или сразу после завершения задачи.
Внедрите межстраничную рекламуНагражден
Реклама, которая вознаграждает пользователей за просмотр коротких видеороликов и взаимодействие с игровой рекламой и опросами.
Реклама с вознаграждением (или «на основе вознаграждения») может помочь монетизировать пользователей бесплатной игры.
Внедрите рекламу с вознаграждением
Другие темы, представляющие интерес
Просмотр пользовательских показателей и аналитических данных
После инициализации Mobile Ads SDK автоматически начинает регистрировать аналитические события и свойства пользователей из вашего приложения. Вы можете просматривать эти данные, не добавляя дополнительный код в свое приложение и не внедряя какую-либо рекламу. Вот где вы можете увидеть эти аналитические данные:
На карточке пользовательских показателей вашего аккаунта AdMob ( главная страница или панель приложений ) вы можете просмотреть специально подобранные пользовательские метрики , полученные на основе собранных аналитических данных, такие как средняя продолжительность сеанса, ARPU и удержание.
На панели инструментов Analytics консоли Firebase вы можете просмотреть агрегированную статистику и сводку ключевых показателей . Если вы добавите Firebase SDK для Google Analytics , вы также сможете отмечать конверсии для рекламных кампаний и создавать собственные аудитории в консоли Firebase .
Обратите внимание: чтобы лучше представить показатели ARPU и ARPPU , вы можете включить данные из пользовательского события аналитики под названием ecommerce_purchase
в расчет дохода для этих показателей ( узнайте, как это сделать ).
(Необязательно) Используйте дополнительные функции Google Analytics и Firebase.
Воспользуйтесь дополнительными возможностями и функциями для улучшения монетизации приложений и вовлечения пользователей:
Добавьте и используйте Firebase SDK для Google Analytics
Внедрите пользовательскую регистрацию событий в своем приложении.
Отмечайте конверсии для специальных рекламных кампаний .
Включите данные о событии
ecommerce_purchase
в расчет дохода для показателей ARPU и ARPPU .
Чтобы узнать больше, посетите руководство по использованию Google Analytics и Firebase с приложениями AdMob .
Используйте другие продукты Firebase в своем приложении
После добавления Firebase SDK для Google Analytics используйте другие продукты Firebase для оптимизации рекламы в своем приложении.
Remote Config позволяет вам бесплатно изменить поведение и внешний вид вашего приложения без публикации обновления приложения для неограниченного числа активных пользователей в день.
A/B Testing дает вам возможность протестировать изменения в пользовательском интерфейсе, функциях или кампаниях по вовлечению вашего приложения, чтобы узнать, влияют ли они на ваши ключевые показатели (такие как доход и удержание), прежде чем широко внедрять изменения.
Это краткое руководство предназначено для издателей и разработчиков, которые хотят использовать AdMob для монетизации приложения, созданного с помощью Firebase. Если вы не планируете включать Firebase в свое приложение, вместо этого посетите отдельное руководство AdMob .
Если вы еще этого не сделали, узнайте обо всех преимуществах совместного использования AdMob , Firebase и Google Analytics .
Если вы впервые читаете это руководство, рекомендуем скачать и следовать ему, используя тестовое приложение Google Mobile Ads C++ SDK .
Прежде чем начать
Если у вас еще нет проекта Firebase и приложения Firebase, следуйте руководству по началу работы с Firebase: Добавьте Firebase в свой проект C++ .
Убедитесь, что Google Analytics включен в вашем проекте Firebase:
Если вы создаете новый проект Firebase, включите Google Analytics во время рабочего процесса создания проекта.
Если у вас есть существующий проект Firebase, в котором не включен Google Analytics , вы можете включить Google Analytics на вкладке «Интеграции» вашего аккаунта.
Шаг 1. Настройте приложение в своем аккаунте AdMob
Зарегистрируйте каждый вариант платформы вашего приложения как приложение AdMob . Войдите или зарегистрируйте учетную запись AdMob . Зарегистрируйте каждый вариант вашего приложения на платформе в AdMob . На этом этапе создается приложение AdMob с уникальным идентификатором приложения AdMob , который понадобится вам далее в этом руководстве.
Вам будет предложено добавить Mobile Ads SDK в ваше приложение. Подробные инструкции по выполнению этой задачи вы найдете далее в этом руководстве. Свяжите каждое из ваших приложений AdMob с соответствующим приложением Firebase. Этот шаг не является обязательным, но настоятельно рекомендуется. Узнайте больше о преимуществах включения пользовательских показателей и связи ваших приложений AdMob с Firebase. Для каждого варианта платформы выполните следующие два шага на панели управления приложениями вашего аккаунта AdMob : Включите пользовательские метрики , чтобы AdMob мог обрабатывать и отображать тщательно подобранные аналитические данные в вашем аккаунте AdMob . Это также необходимая настройка для связи вашего приложения AdMob с Firebase. Свяжите свое приложение AdMob с существующим проектом Firebase и соответствующим приложением Firebase. Убедитесь, что вы вводите то же имя пакета (Android) или идентификатор пакета (iOS), что и для приложения Firebase. Найдите название или идентификатор пакета вашего приложения Firebase на карточке «Ваши приложения » Настройки проекта . >
Шаг 2. Добавьте идентификатор приложения AdMob в свое приложение.
Андроид
AndroidManifest.xml
вашего приложения, добавив тег <meta-data>
, как показано ниже.
<manifest> <application> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID " android:value="ADMOB_APP_ID "/> </application> </manifest>
iOS
В файл Info.plist
вашего приложения добавьте ключ GADApplicationIdentifier
со строковым значением вашего идентификатора приложения AdMob .
Вы можете внести это изменение программно:
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~1458002511 --> <key>GADApplicationIdentifier</key> <string>ADMOB_APP_ID </string>
Или отредактируйте его в редакторе списка свойств:
Шаг 3. Добавьте Google Mobile Ads SDK
Поскольку SDK Google Mobile Ads C++ находится в пространстве имен firebase::gma
, загрузите Firebase C++ SDK и разархивируйте его в выбранный вами каталог.
Firebase C++ SDK не зависит от платформы, но требует настройки библиотеки для конкретной платформы.
Андроид
В файле
gradle.properties
вашего проекта укажите расположение разархивированного SDK:systemProp.firebase_cpp_sdk.dir=
FULL/PATH/TO/SDK В файл
settings.gradle
вашего проекта добавьте следующее содержимое:def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir') gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir" includeBuild "$firebase_cpp_sdk_dir"
В файл Gradle вашего модуля (на уровне приложения) (обычно
app/build.gradle
) добавьте следующий контент, который включает зависимость библиотеки для Google Mobile Ads C++ SDK.android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependency for the Google Mobile Ads C++ SDK apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { gma }
В файл
CMakeLists.txt
вашего проекта добавьте следующее содержимое.# Add Firebase libraries to the target using the function from the SDK. add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) # Add the Google Mobile Ads C++ SDK. # The Firebase C++ library `firebase_app` is required, # and it must always be listed last. set(firebase_libs firebase_gma firebase_app ) target_link_libraries(${target_name} "${firebase_libs}")
Синхронизируйте приложение, чтобы убедиться, что все зависимости имеют необходимые версии.
Все готово! Ваше приложение C++ настроено на использование Google Mobile Ads C++ SDK.
iOS
Действия, описанные в этом разделе, представляют собой пример добавления Google Mobile Ads C++ SDK в ваш проект iOS.
Получите CocoaPods версии 1 или новее, выполнив:
sudo gem install cocoapods --pre
Добавьте модуль Google Mobile Ads из разархивированного SDK.
Создайте подфайл, если у вас его еще нет:
cd
YOUR_APP_DIRECTORY pod init
В свой подфайл добавьте модуль для Google Mobile Ads C++ SDK:
pod 'Google-Mobile-Ads-SDK'
Установите модуль, затем откройте файл
.xcworkspace
в Xcode.pod install
open
YOUR_APP .xcworkspaceДобавьте в проект следующие фреймворки из Firebase C++ SDK:
-
xcframeworks/firebase.xcframework
-
xcframeworks/firebase_gma.xcframework
-
Все готово! Ваше приложение C++ настроено на использование Google Mobile Ads C++ SDK.
Шаг 4. Инициализируйте Google Mobile Ads SDK
Перед загрузкой рекламы инициализируйте Mobile Ads SDK, вызвав firebase::gma::Initialize()
.
Этот вызов возвращает firebase::Future
, который завершается после завершения инициализации (или после 30-секундного таймаута). Вызывайте этот метод только один раз и как можно раньше, в идеале при запуске приложения.
Вот пример вызова Initialize()
:
// Initialize the Google Mobile Ads library firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(jni_env, j_activity, &result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
// Initialize the Google Mobile Ads library. firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(&result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
Используйте Future
для отслеживания статуса завершения вызова метода.
Future
предоставляет вам возможность определить статус завершения вызовов асинхронных методов.
Например, когда ваше приложение вызывает firebase::gma::Initialize()
, создается и возвращается новый firebase::Future
. Затем ваше приложение может опросить status()
объекта Future
, чтобы определить, когда инициализация завершена. После завершения ваше приложение может вызвать result()
для получения итогового значения AdapterInitializationStatus
.
Методы, возвращающие Future
имеют соответствующий метод «последнего результата», который приложения могут использовать для получения самого последнего Future
для данного действия. Например, firebase::gma::Initialize()
есть соответствующий метод под названием firebase::gma::InitializeLastResult()
, который возвращает Future
, который ваше приложение может использовать для проверки статуса последнего вызова firebase::gma::Initialize()
.
Если статус Future
завершен и его код ошибки — firebase::gma::kAdErrorCodeNone
, то операция завершилась успешно.
Вы также можете зарегистрировать обратные вызовы, которые будут вызываться при завершении Future
. В некоторых случаях обратный вызов будет выполняться в другом потоке, поэтому убедитесь, что ваш код поточно-безопасен. Этот фрагмент кода использует указатель на функцию для обратного вызова:
// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
/*user_data=*/nullptr);
// The OnCompletion callback function.
static void OnCompletionCallback(
const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
// Called when the Future is completed for the last call to firebase::gma::Initialize().
// If the error code is firebase::gma::kAdErrorCodeNone,
// then the SDK has been successfully initialized.
if (future.error() == firebase::gma::kAdErrorCodeNone) {
// success!
} else {
// failure.
}
}
Шаг 5. Выберите формат рекламы для использования в вашем приложении.
AdMob предлагает множество различных форматов объявлений, поэтому вы можете выбрать тот, который лучше всего соответствует пользовательскому опыту вашего приложения. Нажмите кнопку формата объявления, чтобы просмотреть подробные инструкции по его реализации в документации AdMob .
Баннер
Прямоугольные объявления, которые появляются вверху или внизу экрана устройства.
Рекламные баннеры остаются на экране, пока пользователи взаимодействуют с приложением, и могут автоматически обновляться через определенный период времени. Если вы новичок в мобильной рекламе, это отличное место для начала.
Внедрить баннерную рекламуМежстраничный
Полноэкранная реклама, закрывающая интерфейс приложения до тех пор, пока пользователь его не закроет.
Межстраничную рекламу лучше всего использовать в естественных паузах в процессе выполнения приложения, например, между уровнями игры или сразу после завершения задачи.
Внедрите межстраничную рекламуНагражден
Реклама, которая вознаграждает пользователей за просмотр коротких видеороликов и взаимодействие с игровой рекламой и опросами.
Реклама с вознаграждением (или «на основе вознаграждения») может помочь монетизировать пользователей бесплатной игры.
Внедрите рекламу с вознаграждением
Другие темы, представляющие интерес
Просмотр пользовательских показателей и аналитических данных
После инициализации Mobile Ads SDK автоматически начинает регистрировать аналитические события и свойства пользователей из вашего приложения. Вы можете просматривать эти данные, не добавляя дополнительный код в свое приложение и не внедряя какую-либо рекламу. Вот где вы можете увидеть эти аналитические данные:
На карточке пользовательских показателей вашего аккаунта AdMob ( главная страница или панель приложений ) вы можете просмотреть специально подобранные пользовательские метрики, полученные на основе собранных аналитических данных, например среднюю продолжительность сеанса, ARPU и удержание.
На панели инструментов Analytics консоли Firebase вы можете просмотреть агрегированную статистику и сводку ключевых показателей . Если вы добавите Firebase SDK для Google Analytics , вы также сможете отмечать конверсии для рекламных кампаний и создавать собственные аудитории в консоли Firebase .
Обратите внимание: чтобы лучше представить показатели ARPU и ARPPU , вы можете включить данные из пользовательского события аналитики под названием ecommerce_purchase
в расчет дохода для этих показателей ( узнайте, как это сделать ).
(Необязательно) Используйте дополнительные функции Google Analytics и Firebase.
Воспользуйтесь дополнительными возможностями и функциями для улучшения монетизации приложений и вовлечения пользователей:
Добавьте и используйте Firebase SDK для Google Analytics
Внедрите пользовательскую регистрацию событий в своем приложении.
Отмечайте конверсии для специальных рекламных кампаний .
Включите данные о событии
ecommerce_purchase
в расчет дохода для показателей ARPU и ARPPU .
Чтобы узнать больше, посетите руководство по использованию Google Analytics и Firebase с приложениями AdMob .
Используйте другие продукты Firebase в своем приложении
После добавления Firebase SDK для Google Analytics используйте другие продукты Firebase для оптимизации рекламы в своем приложении.
Remote Config позволяет вам бесплатно изменить поведение и внешний вид вашего приложения без публикации обновления приложения для неограниченного числа активных пользователей в день.
A/B Testing дает вам возможность протестировать изменения в пользовательском интерфейсе, функциях или кампаниях по вовлечению вашего приложения, чтобы узнать, влияют ли они на ваши ключевые показатели (такие как доход и удержание), прежде чем широко внедрять изменения.
Это краткое руководство предназначено для издателей и разработчиков, которые хотят использовать AdMob для монетизации приложения, созданного с помощью Firebase. Если вы не планируете включать Firebase в свое приложение, вместо этого посетите отдельное руководство AdMob .
Если вы еще этого не сделали, узнайте обо всех преимуществах совместного использования AdMob , Firebase и Google Analytics .
Если вы впервые читаете это руководство, рекомендуем скачать и следовать ему, используя тестовое приложение Google Mobile Ads C++ SDK .
Прежде чем начать
Если у вас еще нет проекта Firebase и приложения Firebase, следуйте руководству по началу работы с Firebase: Добавьте Firebase в свой проект C++ .
Убедитесь, что Google Analytics включен в вашем проекте Firebase:
Если вы создаете новый проект Firebase, включите Google Analytics во время рабочего процесса создания проекта.
Если у вас есть существующий проект Firebase, в котором не включен Google Analytics , вы можете включить Google Analytics на вкладке «Интеграции» вашего аккаунта.
Шаг 1. Настройте приложение в своем аккаунте AdMob
Зарегистрируйте каждый вариант платформы вашего приложения как приложение AdMob . Войдите или зарегистрируйте учетную запись AdMob . Зарегистрируйте каждый вариант вашего приложения на платформе в AdMob . На этом этапе создается приложение AdMob с уникальным идентификатором приложения AdMob , который понадобится вам далее в этом руководстве.
Вам будет предложено добавить Mobile Ads SDK в ваше приложение. Подробные инструкции по выполнению этой задачи вы найдете далее в этом руководстве. Свяжите каждое из ваших приложений AdMob с соответствующим приложением Firebase. Этот шаг не является обязательным, но настоятельно рекомендуется. Узнайте больше о преимуществах включения пользовательских показателей и связи ваших приложений AdMob с Firebase. Для каждого варианта платформы выполните следующие два шага на панели управления приложениями вашего аккаунта AdMob : Включите пользовательские метрики , чтобы AdMob мог обрабатывать и отображать тщательно подобранные аналитические данные в вашем аккаунте AdMob . Это также необходимая настройка для связи вашего приложения AdMob с Firebase. Свяжите свое приложение AdMob с существующим проектом Firebase и соответствующим приложением Firebase. Убедитесь, что вы вводите то же имя пакета (Android) или идентификатор пакета (iOS), что и для приложения Firebase. Найдите название или идентификатор пакета вашего приложения Firebase на карточке «Ваши приложения » Настройки проекта . >
Шаг 2. Добавьте идентификатор приложения AdMob в свое приложение.
Андроид
AndroidManifest.xml
вашего приложения, добавив тег <meta-data>
, как показано ниже.
<manifest> <application> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID " android:value="ADMOB_APP_ID "/> </application> </manifest>
iOS
В файл Info.plist
вашего приложения добавьте ключ GADApplicationIdentifier
со строковым значением вашего идентификатора приложения AdMob .
Вы можете внести это изменение программно:
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~1458002511 --> <key>GADApplicationIdentifier</key> <string>ADMOB_APP_ID </string>
Или отредактируйте его в редакторе списка свойств:
Шаг 3. Добавьте Google Mobile Ads SDK
Поскольку SDK Google Mobile Ads C++ находится в пространстве имен firebase::gma
, загрузите Firebase C++ SDK , а затем разархивируйте его в выбранный вами каталог.
Firebase C++ SDK не зависит от платформы, но требует настройки библиотеки для конкретной платформы.
Андроид
В файле
gradle.properties
вашего проекта укажите расположение разархивированного SDK:systemProp.firebase_cpp_sdk.dir=
FULL/PATH/TO/SDK В файл
settings.gradle
вашего проекта добавьте следующее содержимое:def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir') gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir" includeBuild "$firebase_cpp_sdk_dir"
В файл Gradle вашего модуля (на уровне приложения) (обычно
app/build.gradle
) добавьте следующий контент, который включает зависимость библиотеки для Google Mobile Ads C++ SDK.android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependency for the Google Mobile Ads C++ SDK apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { gma }
В файл
CMakeLists.txt
вашего проекта добавьте следующее содержимое.# Add Firebase libraries to the target using the function from the SDK. add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) # Add the Google Mobile Ads C++ SDK. # The Firebase C++ library `firebase_app` is required, # and it must always be listed last. set(firebase_libs firebase_gma firebase_app ) target_link_libraries(${target_name} "${firebase_libs}")
Синхронизируйте приложение, чтобы убедиться, что все зависимости имеют необходимые версии.
Все готово! Ваше приложение C++ настроено на использование Google Mobile Ads C++ SDK.
iOS
Действия, описанные в этом разделе, представляют собой пример добавления Google Mobile Ads C++ SDK в ваш проект iOS.
Получите CocoaPods версии 1 или новее, выполнив:
sudo gem install cocoapods --pre
Добавьте модуль Google Mobile Ads из разархивированного SDK.
Создайте подфайл, если у вас его еще нет:
cd
YOUR_APP_DIRECTORY pod init
В свой подфайл добавьте модуль для Google Mobile Ads C++ SDK:
pod 'Google-Mobile-Ads-SDK'
Установите модуль, затем откройте файл
.xcworkspace
в Xcode.pod install
open
YOUR_APP .xcworkspaceДобавьте в проект следующие фреймворки из Firebase C++ SDK:
-
xcframeworks/firebase.xcframework
-
xcframeworks/firebase_gma.xcframework
-
Все готово! Ваше приложение C++ настроено на использование Google Mobile Ads C++ SDK.
Шаг 4. Инициализируйте Google Mobile Ads SDK
Перед загрузкой рекламы инициализируйте Mobile Ads SDK, вызвав firebase::gma::Initialize()
.
Этот вызов возвращает firebase::Future
, который завершается после завершения инициализации (или после 30-секундного таймаута). Вызывайте этот метод только один раз и как можно раньше, в идеале при запуске приложения.
Вот пример вызова Initialize()
:
// Initialize the Google Mobile Ads library firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(jni_env, j_activity, &result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
// Initialize the Google Mobile Ads library. firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(&result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
Используйте Future
для отслеживания статуса завершения вызова метода.
Future
предоставляет вам возможность определить статус завершения вызовов асинхронных методов.
Например, когда ваше приложение вызывает firebase::gma::Initialize()
, создается и возвращается новый firebase::Future
. Затем ваше приложение может опросить status()
объекта Future
, чтобы определить, когда инициализация завершена. После завершения ваше приложение может вызвать result()
для получения итогового значения AdapterInitializationStatus
.
Методы, возвращающие Future
имеют соответствующий метод «последнего результата», который приложения могут использовать для получения самого последнего Future
для данного действия. Например, firebase::gma::Initialize()
есть соответствующий метод под названием firebase::gma::InitializeLastResult()
, который возвращает Future
, который ваше приложение может использовать для проверки статуса последнего вызова firebase::gma::Initialize()
.
Если статус Future
завершен и его код ошибки — firebase::gma::kAdErrorCodeNone
, то операция завершилась успешно.
Вы также можете зарегистрировать обратные вызовы, которые будут вызываться при завершении Future
. В некоторых случаях обратный вызов будет выполняться в другом потоке, поэтому убедитесь, что ваш код поточно-безопасен. Этот фрагмент кода использует указатель на функцию для обратного вызова:
// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
/*user_data=*/nullptr);
// The OnCompletion callback function.
static void OnCompletionCallback(
const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
// Called when the Future is completed for the last call to firebase::gma::Initialize().
// If the error code is firebase::gma::kAdErrorCodeNone,
// then the SDK has been successfully initialized.
if (future.error() == firebase::gma::kAdErrorCodeNone) {
// success!
} else {
// failure.
}
}
Шаг 5. Выберите формат рекламы для использования в вашем приложении.
AdMob предлагает множество различных форматов объявлений, поэтому вы можете выбрать тот, который лучше всего соответствует пользовательскому опыту вашего приложения. Нажмите кнопку формата объявления, чтобы просмотреть подробные инструкции по его реализации в документации AdMob .
Баннер
Прямоугольные объявления, которые появляются вверху или внизу экрана устройства.
Рекламные баннеры остаются на экране, пока пользователи взаимодействуют с приложением, и могут автоматически обновляться через определенный период времени. Если вы новичок в мобильной рекламе, это отличное место для начала.
Внедрить баннерную рекламуМежстраничный
Полноэкранная реклама, закрывающая интерфейс приложения до тех пор, пока пользователь его не закроет.
Межстраничную рекламу лучше всего использовать в естественных паузах в процессе выполнения приложения, например, между уровнями игры или сразу после завершения задачи.
Внедрите межстраничную рекламуНагражден
Реклама, которая вознаграждает пользователей за просмотр коротких видеороликов и взаимодействие с игровой рекламой и опросами.
Реклама с вознаграждением (или «на основе вознаграждения») может помочь монетизировать пользователей бесплатной игры.
Внедрите рекламу с вознаграждением
Другие темы, представляющие интерес
Просмотр пользовательских показателей и аналитических данных
После инициализации Mobile Ads SDK автоматически начинает регистрировать аналитические события и свойства пользователей из вашего приложения. Вы можете просматривать эти данные, не добавляя дополнительный код в свое приложение и не внедряя какую-либо рекламу. Вот где вы можете увидеть эти аналитические данные:
На карточке пользовательских показателей вашего аккаунта AdMob ( главная страница или панель приложений ) вы можете просмотреть специально подобранные пользовательские метрики , полученные на основе собранных аналитических данных, такие как средняя продолжительность сеанса, ARPU и удержание.
На панели инструментов Analytics консоли Firebase вы можете просмотреть агрегированную статистику и сводку ключевых показателей . Если вы добавите Firebase SDK для Google Analytics , вы также сможете отмечать конверсии для рекламных кампаний и создавать собственные аудитории в консоли Firebase .
Обратите внимание: чтобы лучше представить показатели ARPU и ARPPU , вы можете включить данные из пользовательского события аналитики под названием ecommerce_purchase
в расчет дохода для этих показателей ( узнайте, как это сделать ).
(Необязательно) Используйте дополнительные функции Google Analytics и Firebase.
Воспользуйтесь дополнительными возможностями и функциями для улучшения монетизации приложений и вовлечения пользователей:
Добавьте и используйте Firebase SDK для Google Analytics
Внедрите пользовательскую регистрацию событий в своем приложении.
Отмечайте конверсии для специальных рекламных кампаний .
Включите данные о событии
ecommerce_purchase
в расчет дохода для показателей ARPU и ARPPU .
Чтобы узнать больше, посетите руководство по использованию Google Analytics и Firebase с приложениями AdMob .
Используйте другие продукты Firebase в своем приложении
После добавления Firebase SDK для Google Analytics используйте другие продукты Firebase для оптимизации рекламы в своем приложении.
Remote Config позволяет вам бесплатно изменить поведение и внешний вид вашего приложения без публикации обновления приложения для неограниченного числа активных пользователей в день.
A/B Testing дает вам возможность протестировать изменения в пользовательском интерфейсе, функциях или кампаниях по вовлечению вашего приложения, чтобы узнать, влияют ли они на ваши ключевые показатели (такие как доход и удержание), прежде чем широко внедрять изменения.
Это краткое руководство предназначено для издателей и разработчиков, которые хотят использовать AdMob для монетизации приложения, созданного с помощью Firebase. Если вы не планируете включать Firebase в свое приложение, вместо этого посетите отдельное руководство AdMob .
Если вы еще этого не сделали, узнайте обо всех преимуществах совместного использования AdMob , Firebase и Google Analytics .
Если вы впервые читаете это руководство, рекомендуем скачать и следовать ему, используя тестовое приложение Google Mobile Ads C++ SDK .
Прежде чем начать
Если у вас еще нет проекта Firebase и приложения Firebase, следуйте руководству по началу работы с Firebase: Добавьте Firebase в свой проект C++ .
Убедитесь, что Google Analytics включен в вашем проекте Firebase:
Если вы создаете новый проект Firebase, включите Google Analytics во время рабочего процесса создания проекта.
Если у вас есть существующий проект Firebase, в котором не включен Google Analytics , вы можете включить Google Analytics на вкладке «Интеграции» вашего аккаунта.
Шаг 1. Настройте приложение в своем аккаунте AdMob
Зарегистрируйте каждый вариант платформы вашего приложения как приложение AdMob . Войдите или зарегистрируйте учетную запись AdMob . Зарегистрируйте каждый вариант вашего приложения на платформе в AdMob . На этом этапе создается приложение AdMob с уникальным идентификатором приложения AdMob , который понадобится вам далее в этом руководстве.
Вам будет предложено добавить Mobile Ads SDK в ваше приложение. Найдите подробные инструкции для этой задачи позже в этом руководстве. Свяжите каждое из ваших приложений AdMob с соответствующим приложением Firebase. Этот шаг необязательно, но настоятельно рекомендуется. Узнайте больше о преимуществах включения метрик пользователей и связывания ваших приложений AdMob с Firebase. Для каждого варианта платформы выполните следующие два шага в панели панели приложений вашей учетной записи AdMob : Включите метрики пользователей , чтобы позволить AdMob обрабатывать и отображать кураторские данные аналитики в вашей учетной записи AdMob . Это также необходимая настройка для вас, чтобы связать ваше приложение AdMob с Firebase. Свяжите свое приложение AdMob с вашим существующим проектом Firebase и соответствующим приложением Firebase. Убедитесь, что вы вводите одно и то же имя пакета (Android) или идентификатор пакета (iOS), как вы ввели для своего приложения Firebase. Найдите имя пакета приложения вашего приложения Firebase на карточке ваших приложений Настройки проекта . >
Шаг 2: Добавьте свой идентификатор приложения AdMob в свое приложение
Андроид
AndroidManifest.xml
, добавив тег <meta-data>
, как показано ниже.
<manifest> <application> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID " android:value="ADMOB_APP_ID "/> </application> </manifest>
iOS
В файл вашего приложения Info.plist
добавьте ключ GADApplicationIdentifier
со строковым значением вашего идентификатора приложения AdMob .
Вы можете сделать это изменение программно:
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~1458002511 --> <key>GADApplicationIdentifier</key> <string>ADMOB_APP_ID </string>
Или отредактируйте его в редакторе списка недвижимости:
Шаг 3: Добавьте Google Mobile Ads SDK
Поскольку Google Mobile Ads C ++ SDK находится в пространстве имен firebase::gma
, загрузите Firebase C ++ SDK , а затем раскрипируйте его в каталог по вашему выбору.
SDK Firebase C ++ не является специфичной для платформы, но требует конфигураций библиотеки, специфичных для платформы.
Андроид
В файле вашего проекта
gradle.properties
укажите местоположение незамеченного SDK:systemProp.firebase_cpp_sdk.dir=
FULL/PATH/TO/SDK В файл
settings.gradle
вашего проекта. Добавьте следующий контент:def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir') gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir" includeBuild "$firebase_cpp_sdk_dir"
В свой модуль (на уровне приложения) File (обычно
app/build.gradle
) добавьте следующий контент, который включает в себя зависимость библиотеки для Google Mobile Ads C ++ SDK.android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependency for the Google Mobile Ads C++ SDK apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { gma }
В файл вашего проекта
CMakeLists.txt
добавьте следующий контент.# Add Firebase libraries to the target using the function from the SDK. add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) # Add the Google Mobile Ads C++ SDK. # The Firebase C++ library `firebase_app` is required, # and it must always be listed last. set(firebase_libs firebase_gma firebase_app ) target_link_libraries(${target_name} "${firebase_libs}")
Синхронизируйте ваше приложение, чтобы убедиться, что все зависимости имеют необходимые версии.
Ты все готово! Ваше приложение C ++ настроено для использования Google Mobile Ads C ++ SDK.
iOS
Шаги в этом разделе являются примером того, как добавить Google Mobile Ads C ++ SDK в ваш проект iOS.
Получить кокопод версии 1 или позже, работая:
sudo gem install cocoapods --pre
Добавьте Google Mobile Ads Pod из Dunzipped SDK.
Создайте Podfile, если у вас его еще нет:
cd
YOUR_APP_DIRECTORY pod init
В ваш Podfile добавьте стручок для Google Mobile Ads C ++ SDK:
pod 'Google-Mobile-Ads-SDK'
Установите стручок, затем откройте файл
.xcworkspace
в XCode.pod install
open
YOUR_APP .xcworkspaceДобавьте следующие рамки из Firebase C ++ SDK в проект:
-
xcframeworks/firebase.xcframework
-
xcframeworks/firebase_gma.xcframework
-
Ты все готово! Ваше приложение C ++ настроено для использования Google Mobile Ads C ++ SDK.
Шаг 4: Инициализируйте Google Mobile Ads SDK
Перед загрузкой рекламы инициализируйте Mobile Ads SDK, позвонив firebase::gma::Initialize()
.
Этот вызов возвращает firebase::Future
, которая завершается после завершения инициализации (или после 30-секундного тайм-аута). Вызовите этот метод только один раз и как можно раньше, в идеале при запуске приложения.
Вот пример того, как вызвать Initialize()
:
// Initialize the Google Mobile Ads library firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(jni_env, j_activity, &result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
// Initialize the Google Mobile Ads library. firebase::InitResult result; Future<AdapterInitializationStatus> future = firebase::gma::Initialize(&result); if (result != kInitResultSuccess) { // Initialization immediately failed, most likely due to a missing dependency. // Check the device logs for more information. return; } // Monitor the status of the future. // See "Use a Future to monitor the completion status of a method call" below. if (future.status() == firebase::kFutureStatusComplete && future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization completed. } else { // Initialization on-going, or an error has occurred. }
Используйте Future
для мониторинга состояния завершения вызова метода
Future
дает вам способ определить статус завершения ваших асинхронных вызовов метода.
Например, когда ваше приложение называет firebase::gma::Initialize()
, новая firebase::Future
создается и возвращается. Ваше приложение может затем опросить status()
Future
чтобы определить, когда инициализация завершена. После завершения ваше приложение может вызвать result()
, чтобы получить полученную AdapterInitializationStatus
.
Методы, которые возвращают Future
имеют соответствующий метод «последнего результата», который приложения могут использовать для извлечения последнего Future
для данного действия. Например, firebase::gma::Initialize()
имеет соответствующий метод, называемый firebase::gma::InitializeLastResult()
, который возвращает Future
, которое может использовать ваше приложение, чтобы проверить статус последнего вызова в firebase::gma::Initialize()
.
Если статус Future
завершен, а код его ошибки - firebase::gma::kAdErrorCodeNone
, то операция успешно завершилась.
Вы также можете зарегистрировать обратные вызовы, которые будут обращаться, когда Future
будет завершено. В некоторых случаях обратный вызов будет работать в другом потоке, поэтому убедитесь, что ваш код безопасен. Этот фрагмент кода использует указатель функции для обратного вызова:
// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
/*user_data=*/nullptr);
// The OnCompletion callback function.
static void OnCompletionCallback(
const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
// Called when the Future is completed for the last call to firebase::gma::Initialize().
// If the error code is firebase::gma::kAdErrorCodeNone,
// then the SDK has been successfully initialized.
if (future.error() == firebase::gma::kAdErrorCodeNone) {
// success!
} else {
// failure.
}
}
Шаг 5: Выберите формат объявления для реализации в вашем приложении
Admob предлагает ряд различных форматов рекламы, поэтому вы можете выбрать формат, который лучше всего соответствует пользовательскому опыту вашего приложения. Нажмите кнопку для формата рекламы, чтобы просмотреть подробные инструкции по реализации в документации AdMob .
Баннер
Прямоугольная реклама, которая появляется в верхней или нижней части экрана устройства
Баннерные объявления остаются на экране, в то время как пользователи взаимодействуют с приложением и могут автоматически обновляться после определенного периода времени. Если вы новичок в мобильной рекламе, это отличное место для начала.
Реализовать баннерные объявленияМежстраничный
Полноэкранная реклама, которая охватывает интерфейс приложения, пока не будет закрыт пользователем
Интерстициальная реклама лучше всего используется в естественных паузах в потоке выполнения приложения, например, между уровнями игры или сразу после выполнения задачи.
Реализовать интерстициальную рекламуНагражден
Реклама, которые вознаграждают пользователей за просмотр коротких видеороликов и взаимодействия с играбельной рекламой и опросами
Награжденная (или «на основе вознаграждений») реклама может помочь монетизировать бесплатных пользователей.
Реализовать вознагражденную рекламу
Другие темы, представляющие интерес
Посмотреть данные пользователей и аналитические данные
После его инициализации Mobile Ads SDK автоматически начинает регистрацию событий аналитики и свойства пользователя из вашего приложения. Вы можете просмотреть эти данные, не добавляя никакого дополнительного кода в ваше приложение и не внедряя какую -либо объявление. Вот где вы можете увидеть эти данные аналитики:
В карте пользовательских метрик вашей учетной записи AdMob ( Home или Apps Dashboard) вы можете просмотреть кураторские показатели пользователей , полученные из собранных данных аналитики, такие как средняя продолжительность сеанса, ARPU и удержание.
На приборной панели аналитики консоли Firebase вы можете просмотреть агрегированную статистику и резюме ключевых метрик . Если вы добавите SDK Firebase SDK для Google Analytics , вы также можете отметить конверсии для рекламных кампаний и создать пользовательскую аудиторию в консоли Firebase .
Обратите внимание, что для лучшего представления метрик ARPU и ARPPU вы можете включить данные из пользовательского события Analytics, называемого ecommerce_purchase
в расчет дохода для этих метрик ( узнайте, как ).
(Необязательно) Используйте больше функций Google Analytics и Firebase
Воспользуйтесь преимуществами большего количества возможностей и функций для улучшения монетизации приложений и вовлечения пользователей:
Добавить и использовать SDK Firebase для Google Analytics
Реализуйте пользовательский журнал событий в вашем приложении.
Конверсии марки для пользовательских рекламных кампаний .
Включите данные о событиях
ecommerce_purchase
в расчет дохода для метрик ARPU и ARPPU .
Чтобы узнать больше, посетите руководство для использования Google Analytics и Firebase с приложениями AdMob .
Используйте другие продукты Firebase в вашем приложении
После добавления SDK Firebase SDK для Google Analytics используйте другие продукты Firebase для оптимизации рекламы в вашем приложении.
Remote Config позволяет вам изменять поведение и внешний вид вашего приложения без публикации обновления приложения, бесплатно, для неограниченных ежедневных активных пользователей.
A/B Testing дает вам возможность проверить изменения в пользовательском интерфейсе вашего приложения, функциях или кампаниях по вовлечению, чтобы узнать, оказывают ли они влияние на ваши ключевые показатели (например, доход и удержание), прежде чем выпустить изменения.