Использование пользовательского коррелятора с Mobile Ads SDK

Для некоторых приложений требуется, чтобы два запроса на показ рекламы были взаимосвязаны.

SDK Google Mobile Ads не позволяет сопоставлять два запроса, что затрудняет предотвращение показа одного и того же креатива двум похожим запросам к объявлениям. Сопоставленные запросы к объявлениям также необходимы для функций блокировки и исключения конкурентов в Ad Manager.

Значение коррелятора — это случайное беззнаковое целое число длиной 16 символов, представленное в виде строки. По умолчанию SDK GMA генерирует новый коррелятор для каждого запроса рекламы, то есть два запроса не коррелируются.

Для сопоставления двух запросов вы можете вручную переопределить коррелятор, сгенерированный GMA SDK, и применить один и тот же коррелятор к нескольким рекламным запросам. Для использования этой функции вам необходимо сгенерировать собственный случайный коррелятор. Вот примеры того, как передать собственный коррелятор:

Java

Bundle extras = new Bundle();
String correlator = "2510196024846425"; // make randomly - should be 16 digits.
extras.putString("correlator", correlator);
AdManagerAdRequest request = new AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();

Котлин

val extras = Bundle()
val correlator = "2510196024846425" // make randomly - should be 16 digits.
extras.putString("correlator", correlator)
val request = AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter::class.java, extras)
    .build()

Время жизни коррелятора составляет 30 секунд. Запросы, отправленные с интервалом более 30 секунд, не будут считаться коррелированными сервером.

Передовые методы

Использование пользовательского коррелятора предоставит менеджеру рекламы необходимый контекст, чтобы предотвратить выбор одного и того же креатива, но запросы на показ рекламы должны выполняться последовательно: отправить запрос на показ рекламы, получить ответ, а затем отправить следующий запрос.

Это можно делать несколько раз, но чем больше запросов вы сделаете, тем больше ресурсов вы потребите. Лучше всего ограничиться 3-5 последовательными запросами. Дополнительные запросы можно делать по мере прокрутки страницы пользователем вниз.

Поскольку коррелятор истекает через 30 секунд, вам не нужно генерировать новое значение для одного и того же длительного просмотра страницы. Генерируйте новый коррелятор в начале каждого нового длительного просмотра страницы. Если вам больше не нужно такое поведение, прекратите передавать собственный коррелятор.

Чтобы предотвратить показ возвращаемых вами объявлений в последующих запросах после истечения срока действия коррелятора, рекомендуется установить ограничение частоты показа — 1 объявление каждые 5–10 минут. Выбранное вами время должно совпадать с типичным временем использования вашего приложения. Ограничения частоты показа могут быть сняты, если вы не покажете объявления, поэтому, если вы отправите запрос на показ объявления, но не покажете его и совершите дополнительные запросы, вы можете получить то же самое объявление.