Медиация AdMob – это функция, которая позволяет показывать в приложениях объявления из различных источников, таких как сеть AdMob и сторонние рекламные сети. Медиация AdMob позволяет повысить заполняемость и увеличить доход, отправляя запросы объявлений в несколько рекламных сетей с целью выбора наиболее подходящей. История успеха.
Требования
Прежде чем настраивать медиацию для формата объявления, необходимо интегрировать этот формат в приложение.
- Баннеры
- Межстраничные объявления
- Нативные объявления
- Объявления с вознаграждением
- Межстраничные объявления с вознаграждением
Вы ещё не пользовались медиацией? Прочитайте обзор медиации AdMob.
Для назначения ставок: Google Mobile Ads SDK (Legacy) 18.3.0 или выше.
Инициализация Google Mobile Ads SDK (Legacy)
В кратком руководстве рассказывается, как инициализировать Google Mobile Ads SDK (Legacy). При этом также инициализируются адаптеры медиации. Важно дождаться завершения инициализации, прежде чем загружать объявления, чтобы убедиться, что все рекламные сети участвуют в первом запросе объявления.
В приведенном ниже образце кода показано, как проверить статус инициализации каждого адаптера перед отправкой запроса объявления.
Java
public void initialize(Context context) {
new Thread(
() ->
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, this::logAdapterStatus))
.start();
}
private void logAdapterStatus(InitializationStatus initializationStatus) {
// Check each adapter's initialization status.
Map<String, AdapterStatus> statusMap = initializationStatus.getAdapterStatusMap();
for (Map.Entry<String, AdapterStatus> entry : statusMap.entrySet()) {
String adapterClass = entry.getKey();
AdapterStatus status = entry.getValue();
Log.d(
TAG,
String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status.getDescription(), status.getLatency()));
}
}
Kotlin
fun initialize(context: Context) {
CoroutineScope(Dispatchers.IO).launch {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, ::logAdapterStatus)
}
}
private fun logAdapterStatus(initializationStatus: InitializationStatus) {
// Check each adapter's initialization status.
for ((adapterClass, status) in initializationStatus.adapterStatusMap) {
Log.d(
TAG,
"Adapter: $adapterClass, Status: ${status.description}, Latency: ${status.latency}ms",
)
}
}
Как узнать, какой класс адаптера рекламной сети загрузил объявление
Ниже приведен пример кода, который регистрирует название класса рекламной сети для баннера:
Java
ResponseInfo responseInfo = ad.getResponseInfo();
String adapterClassName = null;
if (responseInfo != null) {
adapterClassName = responseInfo.getMediationAdapterClassName();
}
Log.d(TAG, "Adapter class name: " + adapterClassName);
Kotlin
Log.d(TAG, "Adapter class name:" + ad.responseInfo?.mediationAdapterClassName)
Подробную информацию об этом методе можно найти в документации по ResponseInfo на сайте getMediationAdapterClassName().
Инициализируйте объект объявления с помощью экземпляра Activity.
В конструктор нового объекта объявления (например, AdView) необходимо передать объект типа Context.
При использовании медиации этот Context передается в другие рекламные сети. Некоторым рекламным сетям требуется более строгий объект Context типа Activity. Без экземпляра Activity они не могут показывать объявления. Поэтому мы рекомендуем передавать экземпляр Activity при инициализации объектов объявлений, чтобы обеспечить единообразие работы с рекламными сетями, использующими медиацию.
Как использовать баннеры с медиацией AdMob
Отключите обновление во всех интерфейсах сторонних источников объявлений для рекламных блоков баннеров, используемых в медиации AdMob. Это предотвратит двойное обновление, поскольку AdMob также запускает обновление на основе частоты обновления рекламного блока для баннеров.
Как использовать нативные объявления с медиацией AdMob
Ниже приведены рекомендации по реализации медиации нативных объявлений.
- Правила показа нативных объявлений
- У каждой рекламной сети свои правила. При использовании медиации важно помнить, что ваше приложение должно соответствовать правилам сети, которая предоставила объявление.
- Используйте
loadAd()вместоloadAds() - Метод
loadAds()позволяет показывать только объявления Google. Для объявлений, размещаемых с помощью медиации, используйтеloadAd().
Законы штатов США о конфиденциальности и Генеральный регламент ЕС о защите персональных данных (GDPR)
Если вам необходимо соблюдать законы штатов США о конфиденциальности или Генеральный регламент ЕС о защите персональных данных (GDPR), следуйте инструкциям в статьях Настройки, обеспечивающие соблюдение законов штатов США или Настройки, обеспечивающие соблюдение регламента GDPR, чтобы добавить партнеров по медиации в список рекламных партнеров в разделе "Конфиденциальность и сообщения" в AdMob. В противном случае партнеры не смогут показывать рекламу в вашем приложении.
Подробнее о том, как включить ограничение обработки данных и получить согласие по GDPR с помощью Google User Messaging Platform (UMP) SDK…