Перейти к содержимому

Playable Unity Ads: требования 2026 и чек-лист для модерации

Playable для Unity Ads: один index.html меньше 5 МБ, base64, MRAID 3.0, без сети, стор по тапу на CTA. Чек-лист по группам и что проверяет модерация.

Опубликовано
6 мин чтения
6 мин чтения
Українська
English
В статье
  1. Что поменялось в октябре 2026
  2. Чек-лист требований Unity к playable
  3. Файл
  4. Сеть и MRAID
  5. Ориентации
  6. Старт, пауза и звук
  7. Переход в стор
  8. Зоны Unity и честный интерфейс
  9. Проверка перед отправкой
  10. Что проверяет модерация
  11. Чего в документации нет
  12. Что из этого есть в DarkCore Ramet

Unity Ads принимает playable как один файл index.html меньше 5 МБ. Картинки, звук и видео зашиты внутри в base64, сетевых запросов нет, MRAID 3.0 поддержан, а портрет и ландшафт идут из одной адаптивной сборки. Стор открывается только по тапу на CTA после игры. Ниже чек-лист по группам, затем что проверяет модерация и чего в документации нет.

Что поменялось в октябре 2026

В разделе What’s new in User Acquisition под октябрём 2026 записаны требования к playable. Минимум Android 5 и iOS 13. Портрет и ландшафт из одной адаптивной сборки, а раздельные горизонтальные и вертикальные загрузки помечены как устаревающие (deprecation). Пауза, когда реклама не видна. Стор только после тапа игрока. Сетевых запросов нет, кроме разрешённых аналитических.

Подробности лежат на странице спецификаций playable. Там же сказано: playable с одной ориентацией в уже созданных паках и кампаниях продолжают работать, а новые должны быть адаптивными.

Чек-лист требований Unity к playable

Каждый пункт ниже можно проверить до отправки. Если не сказано иначе, пункты взяты со страницы спецификаций.

Файл

  • Один HTML-файл index.html, меньше 5 МБ.
  • Все картинки, звук и видео встроены как base64.
  • Нет ссылок на другие файлы и папки, ни относительных путей, ни внешних URL.
  • Код минифицирован: без пробелов и переносов, с короткими именами.
  • Android 5+ и iOS 13+. Модерация отдельно смотрит, нет ли проблем с полифилами для старых Android.

Почему так строго: устройство скачивает с CDN только HTML-файл, всё остальное Unity Ads игнорирует. Если playable локально работает, а в рекламе показывает пустой экран, он, как правило, всё ещё ссылается на ассет по пути или URL. Так написано в самой спецификации.

Сеть и MRAID

  • Нет сетевых запросов (XHR): картинки, конфиги и любой контент нельзя тянуть с сервера в рантайме. Исключение — аналитика, которую Unity может разрешить, без персональных данных.
  • Свои события атрибуции не отправлять: старт, просмотр и клик Unity считает на своей стороне.
  • Поддержка MRAID 3.0. Unity Ads поддерживает только полноэкранные MRAID 3.0 объявления.
  • Вебвью Unity Ads сам внедряет MRAID, тег с MRAID-скриптом подключать не нужно.
  • Не использовать expand, resize, кастомные кнопки закрытия, sms, tel, calendar, storePicture: Unity их не поддерживает.
  • В консоли нет ошибок (это пункт проверок модерации).

Как собрать каркас на MRAID, разобрано в статье MRAID для playable.

Ориентации

  • Одна адаптивная сборка для портрета и ландшафта, без раздельных файлов.
  • Игра перестраивается при изменении размера и повороте экрана.
  • Поворот посреди игры ничего не ломает. Это одна из частых причин реджекта: в списке причин на странице отклонённых паков прямо указано, что реклама некорректно работает при переключении между портретом и ландшафтом.

Старт, пауза и звук

  • Не стартовать при загрузке страницы. Старт только после MRAID-события ready и только когда реклама видна. Контент, который идёт раньше, съедает первые секунды игрока и выглядит сломанным.
  • Пауза, когда реклама не видна.
  • Звук: основной путь через Web Audio API, HTMLAudioElement только как запасной. Он игнорирует mute-переключатель на iOS, а при включённом mute звука быть не должно.
  • Звук выключать и возвращать из обработчика viewableChange. Модерация отдельно смотрит, что звук реагирует на блокировку экрана: при блокировке стихает, при разблокировке возвращается.
  • Нативные контролы видео скрыты: video::-webkit-media-controls { display: none !important; }.

По странице best practices playable должен загружаться и доходить до первого действия меньше чем за 2 секунды на среднем устройстве. Механику нужно показать за первые 3–5 секунд: кнопка закрытия Unity может появиться уже через 5 секунд.

Переход в стор

  • Только mraid.open, только по тапу на CTA после того, как игрок поиграл. Первый тап не может открывать стор.
  • Никаких редиректов без действия игрока и никаких обманных: элемент геймплея, который открывает стор, не пройдёт.
  • CTA ведёт в Google Play или App Store. Проверьте обе платформы.
  • Для iOS следуйте требованиям Apple к креативам; логотип App Store можно показывать только для iOS-приложений.

Зоны Unity и честный интерфейс

  • Текст и кнопки не ставьте в верхнюю и нижнюю области, где Unity рисует свои элементы: обратный отсчёт, кнопку закрытия, интерфейс приватности и согласия. Эти элементы со временем могут меняться.
  • Не перекрывайте кнопку закрытия. Своих и фальшивых кнопок закрытия, имитации системного интерфейса и обманных алертов быть не должно.
  • Если рисуете свой финальный экран, оставьте на нём одну видимую CTA. Финальную карточку Unity не копируйте: её Unity показывает сам, когда игрок пропускает или закрывает playable, с иконкой, рейтингом, названием и кнопкой скачивания, и изменить её нельзя.
  • Без стробоскопических эффектов: по словам Unity, Apple их не разрешает.

Проверка перед отправкой

  • Откройте сборку в десктопном браузере в мобильном разрешении. Для этого она должна запускаться и без MRAID.
  • Проверьте на реальном устройстве через приложение Ad Testing: QR-код для каждого пака даёт дашборд User Acquisition по кнопке Show QR code.
  • Поверните устройство во время игры.
  • Убедитесь, что пауза и возобновление срабатывают по viewableChange, а CTA открывает правильную страницу в сторе на iOS и Android.

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

Что проверяет модерация

Есть две страницы: список причин отклонения и проверки модерации. Вторая общая для всех креативов, не только для playable. Проверки собраны в четыре группы.

  • Specification. Код минифицирован, файл меньше 5 МБ, контент работает на iOS 13+ и Android 5+, нет проблем с полифилами для старых Android.
  • Compatibility. Масштабируется под экран, работает на iOS и Android и при смене ориентации, кнопка установки ведёт в сторы, реагирует на физический mute на iOS.
  • Functionality. Картинка чёткая, всё идёт плавно без тормозов, звук реагирует на блокировку экрана, нет сетевых запросов кроме разрешённых аналитических, нет ошибок в консоли, кнопка установки доступна и ничем не закрыта.
  • Content. Playable не слишком сложный для аудитории, до финального экрана с CTA проходит разумное время, нет запрещённого контента: обнажёнки, порно, языка вражды, оружия, реального насилия, наркотиков, пиратского контента. Unity ограничивает показ креативов с пугающим, жестоким или иным взрослым содержанием.

Если пак отклонён, наведите курсор на его название в дашборде: там указана причина. Дальше нужно исправить и отправить заново. Кампании нужен минимум один одобренный пак, чтобы выйти в эфир. Если в живой кампании есть и одобренные, и ожидающие паки, ожидающие стартуют сами после одобрения.

Отдельная строка для категории gambling: Unity пишет, что рекламодатели в ней должны работать через managed accounts, а креативы партнёров без managed-аккаунта отклоняются на модерации.

Чего в документации нет

  • Точных размеров верхней и нижней зон, которые занимает Unity.
  • Лимитов на отдельные ассеты и base64 помимо общих 5 МБ.
  • Кодеков, частоты кадров и ограничений по длительности аудио и видео.
  • Какие версии SDK и вебвью внедряют MRAID.
  • Как именно модерация тестирует playable.
  • Текста конкретной причины реджекта, порядка апелляции и сроков проверки.
  • Что такое «средний девайс» и как Unity меряет время загрузки.
  • Отдельной проверки на пустой экран, MRAID или редирект на странице проверок модерации: в списке её нет, хотя в спецификации эти требования есть.

Если пункта нет в списке проверок, это не значит, что его можно пропустить: всё, что записано в спецификации, остаётся требованием.

Что из этого есть в DarkCore Ramet

В DarkCore Ramet есть Playable Builder. Видео, загруженное один раз, уходит во все приложения, которым оно нужно, об этом на странице крео. Сравнение с другими сетями, где лимиты и MRAID-версия отличаются, — в статье требования к playable по сетям.

В DarkCore Ramet

Когда playable готов, его нужно залить в кампании

DarkCore Ramet запускает кампании в Unity Ads через официальный API, а видео из одной загрузки уходит во все приложения, где оно нужно.

Все статьи