Часто задаваемые вопросы о Google Interactive Media Ads SDK


Почему я не получаю объявления для всех форматов?
Тестовые теги объявлений настроены так, чтобы всегда возвращать объявления по действительным запросам. Это поможет вам интегрировать и тестировать запросы и показ рекламы. Однако не все форматы объявлений доступны для вашего сайта, аккаунта или рекламного блока. Если интеграция работает правильно для тестового тега, но не для вашего собственного, причина может быть в следующем:
  • Вы показываете в своей среде видео в неподдерживаемом формате. Например, вы показываете только объявления HTML5 на устройствах iOS или Android.
  • Если вы используете Менеджер рекламы, возможно, на ваш идентификатор издателя сейчас не настроен таргетинг объявлений. Кроме того, убедитесь, что вы одобрили релевантные объявления и креативы в Менеджере рекламы.
  • Если вы используете AdSense, то для вашего сайта или тестовой страницы могут быть заданы критерии таргетинга, для которых нет активных объявлений. Чаще всего это происходит из-за использования частных сайтов, которые не сканируются поисковыми роботами.
  • Если вы используете управление партнерскими ресурсами Ad Exchange и параметр descriptionURL не задан или не включен в список управляемых доменов, принадлежащих вам или управляемых вами, объявления не будут показываться на этом домене.
  • Проверьте пороговые значения minCPM, заданные в Ad Exchange Видео. Если цена за тысячу показов будет слишком высокой, заполняемость может оказаться очень низкой. Чтобы исправить это, попробуйте удалить из запроса объявления минимальную цену за тысячу показов или параметр рекламного блока (например, slotname) и проверьте, повлияет ли это на заполняемость.
Как выглядит хороший descriptionUrl?
Чтобы этот тег был наиболее эффективным, контент страницы, на которую он указывает, должен представлять собой не набор слов или фраз, а 1–3 абзаца с описанием контента и вашей роли в его создании.descriptionUrl Один из методов, который был эффективен в прошлом, – динамически объединять контент страницы descriptionUrl из предварительно заданных блоков. Например, несколько предложений о контенте, несколько предложений о том, что вы предлагаете на сайте, а затем несколько заранее определенных фрагментов, связанных с каждым каналом AdSense (например, "Развлечения" или "Спорт"). В результате каждый объект контента имеет достаточно уникальный объект descriptionUrl, который содержит как общую информацию (например, описание жанра), так и конкретную информацию (непосредственно о контенте).

Метаданные HTML должны быть простыми, например:

<html>
  <head>
    <title>Domain.com - Your tag line here!</title>
  </head>
  <body>
    <h1>Descriptions</h1>
    <h2>About this Content</h2>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. ...</p>
    <h2>About Domain.com</h2>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. ...</p>
  </body>
</html>
  
Почему появляется сообщение об ошибке "В ответе объявления нет действительного типа объявления"?
Эта ошибка обычно появляется, если на определенный publisherId (заданный период времени) не настроен таргетинг объявлений. Это условие может меняться в течение дня или нескольких дней, когда кампании запускаются и завершаются. Убедитесь, что срок действия объявления, на которое вы хотите настроить таргетинг, не истек и что критерии таргетинга указаны правильно. Если объявления запрашиваются, получаются и отображаются правильно при использовании тестового publisherId, то они будут правильно обрабатываться и при использовании рабочего publisherId.
Есть ли у вас тег видеообъявления Менеджера рекламы, который я могу использовать для тестирования?
Примеры тегов можно найти на странице Примеры тегов.
Нужно ли задавать для параметров adSlotWidth и adSlotHeight те же значения, что и для параметра sz в теге объявления Менеджера рекламы?
Необязательно. Значения параметров adSlotWidth и adSlotHeight должны соответствовать ширине и высоте проигрывателя или области, в которой вы хотите показывать рекламу. AdSense использует эти данные, чтобы определить, какие объявления можно разместить в этом рекламном блоке. Пара "ключ-значение" sz в рекламном теге Менеджера рекламы является параметром таргетинга и не обязательно влияет на показываемый креатив (подробнее ниже).
Демонстрационный тег объявления работает нормально, но когда я заменяю его своим тегом, объявление не показывается.
Убедитесь, что в тег объявления, который вы запрашиваете, добавлен трафик. Самый простой способ узнать это – посмотреть HTTP-трафик. Если в блоке HTML-якоря возвращается пиксель отслеживания 1x1 pixel grey.gif, проверьте настройки таргетинга в Менеджере рекламы.
Я хочу запрашивать объявления, используя один и тот же тег несколько раз, но получаю объявления только по первому запросу. Что мне делать?
Если вы запрашиваете объявления несколько раз, вам нужно сообщить серверу объявлений, что это не случайные дубликаты, а легитимные запросы. SDK сделает это за вас с помощью двух быстрых вызовов API:
  1. Вызовите destroy() в экземпляре AdsManager. Это предотвращает воспроизведение видеорекламы в конце ролика, когда вы вызываете функцию contentComplete(). При следующем запросе вы получите новый AdsManager.
  2. Вызовите contentComplete() в экземпляре AdsLoader. Это позволяет сбросить настройки SDK, чтобы новый запрос объявления не выглядел как дубликат предыдущего.
После выполнения двух описанных выше вызовов можно вызвать requestAds() в экземпляре AdsLoader, чтобы получить ещё один набор объявлений для нового видео.
Как запрашивать объявления AdSense с наложением и объявления в полноразмерном рекламном месте с помощью IMA SDK?

Чтобы запрашивать объявления AdSense с помощью SDK, сначала нужно получить тег объявления AdSense. Подробнее об этом можно узнать на странице AdSense для видео. После того как вы получите тег, вам нужно выполнить следующие действия, чтобы создать запрос объявления с наложением или полноразмерного объявления:

Оверлеи
  1. В файле AdsRequest задайте для параметра ViewModes значение NORMAL.
  2. Добавьте в рекламный тег параметр overlay=1.
Объявления, занимающие все рекламное место
  1. В файле AdsRequest задайте для параметра ViewModes значение FULLSCREEN.
  2. Добавьте в рекламный тег параметр overlay=0.
При нажатии на мое объявление появляется сообщение об ошибке "Недействительный URL перехода по клику". В чем может быть причина?
Чаще всего эта ошибка возникает из-за неправильно экранированного URL перехода по клику. Если вы видите эту ошибку, убедитесь, что URL перехода на сайт правильно экранирован в ответе VAST.
Можно ли сделать так, чтобы в SDK для Android и iOS все видеообъявление было кликабельным?
Что касается отслеживания кликов по всему видео, то стандартный пользовательский опыт для мобильных видео заключается в том, что при нажатии на видео оно либо приостанавливается, либо открываются элементы управления проигрывателем. Чтобы избежать случайных кликов по объявлениям, когда пользователи хотят получить доступ к элементам управления проигрывателя, в IMA используется кнопка Подробнее. Нажав на нее, пользователь может перейти на страницу с дополнительной информацией о рекламируемом товаре.
Почему появляется ошибка "Пустой документ VAST"?
Эта ошибка возникает, когда тег объявления возвращает пустой документ VAST, что указывает на неправильный показ объявления. Обратитесь к менеджеру аккаунта или представителю сервера объявлений, чтобы узнать, почему не работает тег объявления.
Можно ли изменить размер или текст кнопки Пропустить рекламу или других элементов интерфейса?
В IMA SDK нельзя изменять макет, размер или контент элементов интерфейса. Подробнее об элементах интерфейса рассказывается в статье AdsManager.uiElements.
Почему во время выполнения появляются ошибки "Нет виртуального метода"?

Сообщения об ошибках, подобные приведенным ниже, возникают из-за того, что в более ранних версиях сервисов Google Play нет рекламного идентификатора.

No virtual method
getInfo()Lcom/google/android/gms/ads/identifier/AdvertisingIdClient$Info; in
class Lcom/google/android/gms/ads/identifier/AdvertisingIdClient; or its
super classes (declaration of 'com.google.android.gms.ads.identifier.AdvertisingIdClient'

Чтобы устранить эту проблему, обновите версию до 4.0 или более поздней (желательно до последней).

Можно ли использовать несколько потоков для инициализации и управления интерфейсом?
Нет, все операции по инициализации и управлению интерфейсом должны выполняться в основном потоке. В Android объекты интерфейса не являются потокобезопасными. Подробнее о цепочках писем…