Начать

Выберите платформу: Android (бета-версия)Новый Android iOS Unity Flutter

В этом руководстве показано, как интегрировать адаптер медиации с вашим Android-приложением.

Предварительные требования

Прежде чем интегрировать медиацию для рекламного формата, необходимо интегрировать этот рекламный формат в ваше приложение:

Впервые сталкиваетесь с медиацией? Прочитайте раздел «Введение в медиацию» .

Для размещения ставок: Google Mobile Ads SDK версии 18.3.0 или выше.

Инициализация SDK для мобильной рекламы Google.

Краткое руководство по началу работы показывает, как инициализировать SDK Google Mobile Ads . Во время этой инициализации также инициализируются адаптеры медиации. Важно дождаться завершения инициализации, прежде чем загружать объявления, чтобы убедиться в полном участии всех рекламных сетей при первом запросе объявления.

Приведенный ниже пример кода показывает, как проверить состояние инициализации каждого адаптера перед отправкой запроса на показ рекламы.

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()));
  }
}

Котлин

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);

Котлин

Log.d(TAG, "Adapter class name:" + ad.responseInfo?.mediationAdapterClassName)

Для получения более подробной информации об этом методе обратитесь к документации ResponseInfo по методу getMediationAdapterClassName() .

Инициализируйте объект объявления экземпляром Activity.

В конструкторе нового объекта объявления (например, AdManagerAdView ) необходимо передать объект типа Context . Этот Context передается другим рекламным сетям при использовании медиации. Некоторые рекламные сети требуют более строгих требований к Context , который имеет тип Activity , и могут не иметь возможности показывать объявления без экземпляра Activity . Поэтому мы рекомендуем передавать экземпляр Activity при инициализации объектов объявлений, чтобы обеспечить согласованную работу с вашими медиатическими рекламными сетями.

Обязательно отключите обновление во всех пользовательских интерфейсах сторонних источников рекламы для баннерных объявлений, используемых в медиации. Это предотвратит двойное обновление, поскольку Ad Manager также запускает обновление в зависимости от частоты обновления вашего баннерного объявления.

Используйте нативную рекламу с медиацией.

Ниже приведены некоторые рекомендации, которые следует учитывать при внедрении нативной медиации.

Политика показа нативной рекламы
Каждая рекламная сеть имеет свои собственные правила. При использовании медиации важно помнить, что ваше приложение по-прежнему должно соблюдать правила той сети, которая предоставила рекламу.
Используйте loadAd() вместо loadAds()
Метод loadAds() отображает только рекламу Google. Для медийной рекламы используйте вместо него loadAd() .

Законы штатов США о защите конфиденциальности и GDPR

Если вам необходимо соблюдать законы США о защите конфиденциальности или Общий регламент по защите данных (GDPR) , выполните действия, описанные в настройках законов США или настройках GDPR , чтобы добавить ваших партнеров по посредничеству в список партнеров по рекламе в США или GDPR в разделе «Конфиденциальность и обмен сообщениями» в Ad Manager. Несоблюдение этого требования может привести к тому, что партнеры не смогут показывать рекламу в вашем приложении.

Узнайте больше о включении ограниченной обработки данных (RDP) и получении согласия в соответствии с GDPR с помощью SDK платформы обмена сообщениями пользователей Google (UMP) .