Работа с рекламой
Вы можете получать доход от размещения рекламных блоков в своих играх. Для этого:
- Изучите особенности и рекомендации по размещению рекламы.
- Настройте вызов рекламы, используя SDK.
- Подключите монетизацию в консоли разработчика Яндекс Игр.
Особенности и рекомендации по размещению рекламы
- Размещайте вызов рекламы таким образом, чтобы пользователь понимал, что это не часть игры, а рекламный блок.
- Рекомендуемые места для вставки рекламы в игре: перед началом игры, при переходе на следующий уровень, после проигрыша.
- Частота вызова видеорекламы с вознаграждением (rewarded video) не ограничена.
- Частота вызова полноэкранного блока рекламы управляется платформой Яндекс Игры.
Внимание
Рекламная сеть Яндекса считает случайные клики пользователей по блокам рекламы признаком рекламного фрода и снижает доход от рекламы в игре.
Чтобы этого избежать, не вызывайте показ рекламы во время игрового процесса, когда пользователь может нажать на блок рекламы ненамеренно.
Пример неправильного вызова:
setInterval(() => ysdk.adv.showFullscreenAdv(), 180000)
Настройка вызова рекламы
Полноэкранный блок рекламы
Полноэкранный блок рекламы — блоки с рекламой, которые полностью закрывают фон приложения и показываются между запросом какой-то информации пользователем (например, при переходе на следующий уровень игры) и ее получением.
Чтобы вызвать рекламу, используйте метод ysdk.adv.showFullscreenAdv({callbacks:{}})
.
callbacks
— опциональные callback-функции. Настраиваются индивидуально для каждого рекламного блока.
-
onClose
— вызывается при закрытии рекламы, после ошибки, а также, если реклама не открылась по причине слишком частого вызова. Используется с аргументомwasShown
(типboolean
), по значению которого можно узнать была ли показана реклама. -
onOpen
— вызывается при успешном открытии рекламы. -
onError
— вызывается при возникновении ошибки. Объект ошибки передается в callback-функцию.
Пример
ysdk.adv.showFullscreenAdv({
callbacks: {
onClose: function(wasShown) {
// Действие после закрытия рекламы.
},
onError: function(error) {
// Действие в случае ошибки.
}
}
})
Видеореклама с вознаграждением (rewarded video)
Видео с вознаграждением — блоки с видеорекламой, которые используются для монетизации игр. За просмотр видеоролика пользователь получает награду или внутриигровую валюту.
Чтобы вызвать рекламу, используйте метод ysdk.adv.showRewardedVideo({callbacks:{}})
.
callbacks
— опциональные callback-функции. Настраиваются индивидуально для каждого рекламного блока.
-
onClose
— вызывается при закрытии видеорекламы. -
onOpen
— вызывается при отображении видеорекламы на экране. -
onError
— вызывается при возникновении ошибки. Объект ошибки передается в callback-функцию. -
onRewarded
— вызывается, когда засчитывается просмотр видеорекламы. Укажите в данной функции, какую награду пользователь получит после просмотра.
Пример
ysdk.adv.showRewardedVideo({
callbacks: {
onOpen: () => {
console.log('Video ad open.');
},
onRewarded: () => {
console.log('Rewarded!');
},
onClose: () => {
console.log('Video ad closed.');
},
onError: (e) => {
console.log('Error while open video ad:', e);
}
}
})
Sticky-баннер
Чтобы включить показ sticky-баннера:
- Откройте консоль разработчика и перейдите на вкладку Реклама.
- В блоке Sticky-баннеры настройте отображение баннеров:
-
Для мобильных устройств:
- Sticky-баннер в портретной ориентации — выберите расположение Внизу или Вверху;
- Sticky-баннер в альбомной ориентации — выберите расположение Внизу, Вверху или Справа.
-
Для компьютеров — включите опцию Sticky-баннер на десктопе. Баннер будет показываться справа.
-
По умолчанию sticky-баннер появляется при запуске игры и отображается всю сессию. Чтобы настроить момент показа баннера:
- В блоке Sticky-баннеры включите опцию Использовать API для показа sticky-баннера.
- Задайте показ баннеров, используя методы:
ysdk.adv.getBannerAdvStatus()
— показывает статус баннера;ysdk.adv.showBannerAdv()
— вызывает баннер;ysdk.adv.hideBannerAdv()
— убирает баннер.
Методы возвращают значение stickyAdvIsShowing: boolean
. Если stickyAdvIsShowing = false
, методы ysdk.adv.getBannerAdvStatus()
и ysdk.adv.showBannerAdv()
могут вернуть опциональное поле reason
с возможными причинами:
ADV_IS_NOT_CONNECTED
— не подключены баннеры;UNKNOWN
— ошибка показа рекламы на стороне Яндекса.
Пример
ysdk.adv.getBannerAdvStatus().then(({ stickyAdvIsShowing , reason }) => {
if (stickyAdvIsShowing) {
// Реклама показывается.
} else if(reason) {
// Реклама не показывается.
console.log(reason)
} else {
ysdk.adv.showBannerAdv()
}
})
Примечание
Сотрудники службы поддержки помогают разместить готовую игру на платформе Яндекс Игр. На прикладные вопросы о разработке и тестировании предметно ответят другие разработчики в Сообществе в Telegram.
Если при использовании SDK Яндекс Игр вы столкнулись с проблемой или у вас появился вопрос, обратитесь в службу поддержки:
callbacks
— опциональные callback-функции. Настраиваются индивидуально для каждого рекламного блока.
onClose
— вызывается при закрытии рекламы, после ошибки, а также, если реклама не открылась по причине слишком частого вызова. Используется с аргументом wasShown
(тип boolean
), по значению которого можно узнать была ли показана реклама.
onError
— вызывается при возникновении ошибки. Объект ошибки передается в callback-функцию.
onOpen
— вызывается при отображении видеорекламы на экране.
onRewarded
— вызывается, когда засчитывается просмотр видеорекламы. Укажите в данной функции, какую награду пользователь получит после просмотра.
onClose
— вызывается при закрытии видеорекламы.
Блок с рекламой, который показывается во время игры.