В этом руководстве показано, как использовать GMA Next-Gen SDK для загрузки и отображения рекламы из Unity Ads с помощью AdMob Mediation , включая интеграцию с системами назначения ставок и каскадной обработки. Также описано, как добавить Unity Ads в конфигурацию медиации рекламного блока и как интегрировать SDK и адаптер Unity Ads в приложение Android.
Поддерживаемые интеграции и форматы рекламы
Адаптер медиации для Unity Ads обладает следующими возможностями:
| Интеграция | |
|---|---|
| Торги | |
| Водопад | 1 |
| Форматы | |
| Баннер | |
| Интерстициальный | |
| Награжден | |
| Родной | |
Требования
- Android API уровня 24 или выше
- [Для участия в торгах]: Для интеграции всех поддерживаемых форматов рекламы в систему торгов используйте адаптер Unity версии 4.16.0.1 или выше ( рекомендуется последняя версия ).
Новейший GMA Next-Gen SDK
Заполните руководство по началу медиации.
Шаг 1: Настройка параметров в пользовательском интерфейсе Unity Ads.
Зарегистрируйтесь или войдите в Unity Ads.
Создать проект
На панели управления Unity Ads перейдите в раздел «Проекты» и нажмите «Создать» .

Заполните форму и нажмите «Создать» , чтобы добавить свой проект.

Перейдите в раздел «Монетизация Unity Ads» , затем нажмите « Начать» .

В окне «Новый проект» выберите «Я буду использовать Mediation и Google Admob в качестве партнера по Mediation» , затем нажмите «Далее» .

Выберите пункт «Настройки рекламы», затем нажмите «Далее» .

Выберите параметры размещения, затем нажмите «Далее» .
Торги

Водопад

Заполните форму, затем нажмите «Добавить проект» .

Запишите идентификатор игры .

Создавайте рекламные блоки и места размещения.
Перейдите в раздел «Монетизация Unity Ads» > «Размещения» , затем выберите свой проект и нажмите «Добавить рекламный блок» .

Введите название рекламного блока , затем выберите платформу и формат объявления .

Торги
Выберите «Торги» для настройки . В поле «Размещение» введите название размещения .

Запишите идентификатор места прохождения практики .
Водопад
Для настройки выберите «Каскад» . В поле «Размещение» введите название размещения , геотеги и цель .

Запишите идентификатор места прохождения практики .
Наконец, нажмите «Добавить рекламный блок» , чтобы сохранить рекламный блок и место размещения.
Найдите ключ API для отчетов по рекламе в Unity.
Торги
Этот шаг не требуется для интеграции с системами торгов.
Водопад
Перейдите в раздел «Монетизация Unity Ads» > «Управление API» и запишите ключ API в поле «Доступ к API статистики монетизации» .

Затем перейдите в раздел «Монетизация Unity Ads» > «Настройки организации» и запишите идентификатор ядра организации .

Обновите файл app-ads.txt.
Файл app-ads.txt, созданный в рамках инициативы IAB Tech Lab для авторизованных продавцов рекламы в приложениях , помогает гарантировать, что рекламный инвентарь вашего приложения продается только через каналы, которые вы определили как авторизованные. Чтобы предотвратить значительные потери дохода от рекламы, вам потребуется внедрить файл app-ads.txt . Если вы еще этого не сделали, создайте файл app-ads.txt для своего приложения .
Чтобы использовать файл app-ads.txt для Unity Ads, см. раздел «Первоначальная настройка файла app-ads.txt» .
Включите тестовый режим
Тестовый режим можно включить на панели управления Unity Ads . Перейдите в раздел «Монетизация Unity Ads» > «Тестирование» .
Вы можете принудительно включить тестовый режим для своего приложения, нажав кнопку редактирования рядом с Google Play Store , включив параметр «Переопределить тестовый режим клиента» и выбрав «Принудительно включить тестовый режим (т.е. использовать тестовую рекламу) для всех устройств» .

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

Введите данные вашего тестового устройства, затем нажмите «Сохранить» .

Шаг 2: Настройте параметры показа рекламы Unity Ads в пользовательском интерфейсе AdMob.
Настройте параметры медиации для вашего рекламного блока.
Вам необходимо добавить Unity Ads в конфигурацию медиации для вашего рекламного блока.
Сначала войдите в свою учетную запись AdMob . Затем перейдите на вкладку «Медиация» . Если у вас уже есть группа медиации, которую вы хотите изменить, щелкните по ее названию, чтобы отредактировать ее, и перейдите к разделу «Добавить объявления Unity в качестве источника рекламы» .
Чтобы создать новую группу медиации, выберите «Создать группу медиации» .

Укажите формат и платформу вашей рекламы, затем нажмите «Продолжить» .

Присвойте вашей группе посредничества название и выберите регионы для таргетирования. Затем установите статус группы посредничества на «Включено» и нажмите «Добавить рекламные блоки» .

Свяжите эту группу медиации с одним или несколькими существующими рекламными блоками AdMob. Затем нажмите «Готово» .

Теперь вы должны увидеть карточку рекламных блоков, заполненную выбранными вами рекламными блоками:

Добавьте Unity Ads в качестве источника рекламы.
Торги
В разделе «Источники рекламы» на вкладке « Торги » выберите «Добавить источник рекламы» . Затем выберите «Unity Ads» .
Нажмите «Как заключить партнерское соглашение и настроить партнерство по размещению рекламы с Unity Ads».

Нажмите «Подтвердить и согласиться» , затем нажмите «Продолжить» .

Если у вас уже есть сопоставление для Unity Ads, вы можете его выбрать. В противном случае нажмите «Добавить сопоставление» .

Далее введите идентификатор игры (Game ID) и идентификатор места (Placement ID) , полученные в предыдущем разделе. Затем нажмите «Готово» .

Водопад
В разделе «Источники рекламы » на вкладке « Водопад » выберите «Добавить источник рекламы» .
Выберите Unity Ads и включите переключатель «Оптимизировать» . Введите ключ API и идентификатор ядра организации , полученные в предыдущем разделе, чтобы настроить оптимизацию источника рекламы для Unity Ads. Затем введите значение eCPM для Unity Ads и нажмите «Продолжить» .

Если у вас уже есть сопоставление для Unity Ads, вы можете его выбрать. В противном случае нажмите «Добавить сопоставление» .

Далее введите идентификатор игры (Game ID) и идентификатор места (Placement ID) , полученные в предыдущем разделе. Затем нажмите «Готово» .

Добавить Unity Ads в список рекламных партнеров, соответствующих требованиям GDPR и законодательства штатов США.
Чтобы добавить Unity Ads в список рекламных партнеров, соответствующих европейским и американским государственным нормативным требованиям, в пользовательском интерфейсе AdMob, выполните действия, описанные в настройках европейских и американских нормативных требований .
Шаг 3: Импортируйте SDK и адаптер Unity Ads.
Интеграция с Android Studio (рекомендуется)
В файл gradle на уровне приложения добавьте следующие зависимости реализации и конфигурации:
Котлин
dependencies { implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.24.0-beta02") implementation("com.unity3d.ads:unity-ads:4.16.5") implementation("com.google.ads.mediation:unity:4.16.6.0") } configurations.configureEach { exclude(group = "com.google.android.gms", module = "play-services-ads") exclude(group = "com.google.android.gms", module = "play-services-ads-lite") }
Классный
dependencies { implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.24.0-beta02' implementation 'com.unity3d.ads:unity-ads:4.16.5' implementation 'com.google.ads.mediation:unity:4.16.6.0' } configurations.configureEach { exclude group: 'com.google.android.gms', module: 'play-services-ads' exclude group: 'com.google.android.gms', module: 'play-services-ads-lite' }
Ручная интеграция
Загрузите последнюю версию Unity Ads SDK (
unity-ads.aar) из их репозитория на GitHub и добавьте её в свой проект.Перейдите к артефактам адаптера Unity Ads в репозитории Maven Google. Выберите последнюю версию, загрузите файл
.aarадаптера Unity Ads и добавьте его в свой проект.
Шаг 4: Внедрите настройки конфиденциальности в Unity Ads SDK.
Согласие ЕС и GDPR
В соответствии с Политикой Google по согласию пользователей в ЕС , вы должны предоставлять пользователям в Европейской экономической зоне (ЕЭЗ), Великобритании и Швейцарии определенную информацию и получать их согласие на использование файлов cookie или других локальных хранилищ, если это требуется по закону, а также на сбор, передачу и использование персональных данных для персонализации рекламы. Данная политика отражает требования Директивы ЕС о защите конфиденциальности в электронных коммуникациях (ePrivacy Directive) и Общего регламента по защите данных (GDPR). Вы несете ответственность за проверку того, что согласие передается каждому источнику рекламы в вашей цепочке посредничества. Google не может автоматически передавать выбор согласия пользователя таким сетям.
В версии SDK 2.0.0 в Unity Ads добавлен API для поддержки настроек конфиденциальности. Следующий пример кода показывает, как передать эту информацию о согласии в SDK Unity Ads. Если вы решите передавать информацию о согласии в SDK Unity Ads вручную, рекомендуется вызывать этот код перед запросом рекламы через GMA Next-Gen SDK .
Java
MetaData gdprMetaData = new MetaData(this);
gdprMetaData.set("gdpr.consent", true);
gdprMetaData.commit();
Котлин
val gdprMetaData = MetaData(this)
gdprMetaData["gdpr.consent"] = true
gdprMetaData.commit()
Более подробную информацию о соответствии Unity Ads требованиям GDPR , а также о значениях, которые можно указать в каждом методе, см. в разделе «Соответствие GDPR».
Законы штатов США о защите частной жизни
Законы США о защите конфиденциальности требуют предоставления пользователям права отказаться от «продажи» их «личной информации» (как это определено в законе), при этом отказ предлагается через заметную ссылку «Не продавать мою личную информацию» на главной странице «продающей» стороны. Руководство по соблюдению законов США о защите конфиденциальности предлагает возможность включения ограниченной обработки данных для показа рекламы Google, но Google не может применить эту настройку к каждой рекламной сети в вашей цепочке посредничества. Поэтому вы должны определить каждую рекламную сеть в вашей цепочке посредничества, которая может участвовать в продаже личной информации, и следовать указаниям каждой из этих сетей для обеспечения соответствия требованиям.
В версии SDK 2.0.0 в Unity Ads добавлен API для поддержки настроек конфиденциальности. Следующий пример кода показывает, как передать эту информацию о согласии в SDK Unity Ads. Если вы решите передавать информацию о согласии в SDK Unity Ads вручную, рекомендуется вызывать этот код перед запросом рекламы через GMA Next-Gen SDK .
Java
MetaData ccpaMetaData = new MetaData(this);
ccpaMetaData.set("privacy.consent", true);
ccpaMetaData.commit();
Котлин
val ccpaMetaData = MetaData(this)
ccpaMetaData["privacy.consent"] = true
ccpaMetaData.commit()
Более подробную информацию о соответствии Unity Ads Закону о защите персональных данных потребителей, а также о значениях, которые можно указать в каждом методе, см. в разделе «Соответствие Закону о защите персональных данных потребителей» .
Шаг 5: Добавьте необходимый код
Загрузить рекламу с контекстом активности
При загрузке баннерной, межстраничной и нативной рекламы передавайте контекст Activity . Без контекста активности загрузка рекламы завершится неудачей.
Шаг 6: Протестируйте свою реализацию.
Включить тестовые объявления
Убедитесь, что вы зарегистрировали свое тестовое устройство в AdMob и включили тестовый режим в пользовательском интерфейсе Unity Ads.
Проверить тестовые объявления
Чтобы убедиться, что вы получаете тестовые объявления от Unity Ads, включите тестирование одного источника объявлений в инспекторе объявлений, используя источники объявлений Unity Ads (Bidding) и Unity Ads (Waterfall ).
коды ошибок
Если адаптер не получает объявление от Unity Ads, издатели могут проверить основную причину ошибки в ответе на объявление, используя ResponseInfo.getAdSourceResponses() из следующих классов:
com.google.ads.mediation.unity.UnityAdapter
com.google.ads.mediation.unity.UnityMediationAdapter
Вот коды и соответствующие сообщения, которые выдает адаптер UnityAds, когда реклама не загружается:
| Код ошибки | Причина |
|---|---|
| 0-10 | SDK UnityAds вернул ошибку. Подробности см. в коде . |
| 101 | Параметры сервера UnityAds, настроенные в пользовательском интерфейсе AdMob, отсутствуют/недействительны. |
| 102 | UnityAds вернул рекламное место с состоянием NO_FILL. |
| 103 | UnityAds вернул объявление с состоянием DISABLED. |
| 104 | UnityAds попытался показать рекламу с нулевым контекстом. |
| 105 | Контекст, используемый для инициализации, загрузки и/или показа рекламы в Unity Ads, не является экземпляром Activity. |
| 106 | UnityAds попытался показать рекламу, которая ещё не готова к показу. |
| 107 | UnityAds не поддерживается на этом устройстве. |
| 108 | В UnityAds можно загрузить только одно объявление на одном рекламном месте одновременно. |
| 109 | Программа UnityAds завершила работу с ошибкой. |
| 200-204 | Ошибка, специфичная для баннера UnityAds. Подробности см. в коде . |