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


Почему я не получаю рекламу для всех форматов?
Теги тестовых объявлений настроены так, чтобы всегда возвращать объявления по действительным запросам. Это призвано облегчить интеграцию и упростить тестирование того, как ваш проигрыватель запрашивает и отображает рекламу. Однако объявления не всегда доступны во всех форматах для вашего сайта, аккаунта или рекламного блока. Если ваша интеграция работает правильно для тестового тега, но не для вашего собственного тега, причина может быть одной из следующих:
  • Вы передаете в свою среду видео неподдерживаемого формата. Например, вы показываете только объявления HTML5 на iOS или Android.
  • Если вы используете Менеджер рекламы, возможно, в настоящее время для вашего идентификатора издателя нет объявлений, ориентированных на него. Также убедитесь, что вы одобрили соответствующие объявления и креативы в Менеджере рекламы.
  • Если вы используете AdSense, критерии таргетинга вашего сайта или тестовой страницы могут не содержать активных рекламных объявлений. Наиболее распространенной причиной является использование частных несканируемых веб-сайтов.
  • Если вы используете систему управления партнерами сети Ad Exchange, а descriptionURL не задан или не указан в списке управления принадлежащими или управляемыми доменами, объявления на нем показываться не будут.
  • Проверьте пороговые значения минимальной цены за тысячу показов, определенные в Ad Exchange Video. Достаточно высокая цена за тысячу показов может привести к очень низкой заполняемости. Чтобы исправить это, попробуйте удалить минимальную цену за тысячу показов или параметр рекламного блока из запроса объявления (например, название рекламного места), чтобы проверить, влияет ли это на заполняемость.
Как выглядит хороший descriptionUrl ?
Чтобы быть наиболее эффективным, содержимое страницы, на которую указывает descriptionUrl , не должно представлять собой набор слов или фраз, а должно состоять из 1–3 абзацев, фактически описывающих контент и вашу роль в его предоставлении. Один из методов, который был успешным в прошлом, — это динамическое объединение содержимого 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-трафик. Если изображение grey.gif размером 1 x 1 пиксель возвращается в блоке привязки HTML, вам необходимо проверить таргетинг в Менеджере рекламы.
Я хочу запросить рекламу с использованием одного и того же тега несколько раз, но получаю рекламу только по первому запросу. Как мне это исправить?
Когда вы запрашиваете рекламу более одного раза, вам необходимо сообщить рекламному серверу, что это законные запросы, а не случайные дубликаты. 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, что указывает на то, что объявление не было показано должным образом. Поговорите со своим менеджером по работе с клиентами или представителем рекламного сервера, чтобы узнать, почему ваш рекламный тег не работает.
Могу ли я изменить размер/текст поля пропуска рекламы или других элементов пользовательского интерфейса?
Пакеты SDK IMA не поддерживают изменение макета, размера или содержимого элементов пользовательского интерфейса. Дополнительные сведения об элементах пользовательского интерфейса см. в 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 объекты пользовательского интерфейса не являются потокобезопасными. См. Темы для получения дополнительной информации.