中介

Агрегатор AdMob это функция , которая позволяет обслуживать в приложениях объявления из различных источников, в том числе сети AdMob, рекламных сетей третьих лиц, и AdMob кампаний . Посредник AdMob помогает максимально увеличить заполняемость и монетизацию, отправляя запросы объявлений в несколько сетей, чтобы вы могли найти наиболее подходящую сеть для показа рекламы. Пример .

Это руководство - ваш универсальный инструмент для интеграции агрегатора в ваше приложение AdMob. Он охватывает как интеграцию ставок, так и каскадную интеграцию.

Предпосылки

  • Для торгов: Google Mobile Ads SDK18.3.0или выше.

Инициализировать SDK мобильной рекламы

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

В приведенном ниже примере кода показано, как можно проверить статус инициализации каждого адаптера перед отправкой запроса объявления.

Джава

import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.AdapterStatus;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
                Map<String, AdapterStatus> statusMap = initializationStatus.getAdapterStatusMap();
                for (String adapterClass : statusMap.keySet()) {
                    AdapterStatus status = statusMap.get(adapterClass);
                    Log.d("MyApp", String.format(
                            "Adapter name: %s, Description: %s, Latency: %d",
                            adapterClass, status.getDescription(), status.getLatency()));
                }

                // Start loading ads here...
            }
        });
    }
}

Котлин

import com.google.android.gms.ads.MobileAds

MobileAds.initialize(this) { initializationStatus ->
  val statusMap =
    initializationStatus.adapterStatusMap
  for (adapterClass in statusMap.keys) {
    val status = statusMap[adapterClass]
    Log.d("MyApp", String.format(
      "Adapter name: %s, Description: %s, Latency: %d",
      adapterClass, status!!.description, status.latency))
  }

  // Start loading ads here...
}

Проверьте, какой класс адаптера рекламной сети загрузил объявление

Вот пример кода, который регистрирует имя класса рекламной сети для рекламного баннера:

Джава

public void onAdLoaded() {
  Log.d("Banner adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}

Котлин

override fun onAdLoaded() {
  Log.d("Banner adapter class name:" + ad.responseInfo.mediationAdapterClassName)
}

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

Инициализируйте свой рекламный объект с помощью экземпляра Activity

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

Посредничество с рекламой с вознаграждением

Мы рекомендуем вам переопределить все значение вознаграждения по умолчанию, установив значение вознаграждения в AdMob UI. Чтобы сделать это, выберите Применить ко всем сетям в посреднической группе поля так , что награда соответствует во всех сетях. Некоторые рекламные сети вообще не предоставляют значение или тип вознаграждения. За счет переопределения значения вознаграждения вознаграждение остается неизменным независимо от того, в какой рекламной сети было показано объявление.

Для получения дополнительной информации о настройке значения вознаграждения в AdMob UI см создать вознаграждаются рекламный блок .

Медиация нативной рекламы

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

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