广告
您可以通过在游戏中放置广告块来获得收入。为此,您需要:
关于放置广告的提示和建议
- 合理放置广告,让用户注意到这是一个广告单元,而不是游戏的一部分。
- 在游戏中插入广告的建议位置:开始游戏前、进入下一关卡前,以及输掉游戏后。
- 您可以根据所需的频率调用奖励视频。
- 调用插屏广告单元的频率由 Yandex Games 控制。
注意
当用户随机点击广告单元时,Yandex 广告网络会将其视为广告欺诈的迹象,从而减少游戏的广告收入。
为避免发生这种情况,请不要在游戏进行期间调用广告,因为这时用户可能会无意中点击广告块。
错误调用的示例:
setInterval(() => ysdk.adv.showFullscreenAdv(), 180000)
配置广告调用
插屏广告
插屏广告是指完全覆盖应用背景并在用户获得所请求的数据(例如进入下一游戏关卡)之前显示的广告单元。
要调用广告,请使用 ysdk.adv.showFullscreenAdv({callbacks:{}}) 方法。
callbacks:可选的回调函数。将为每个广告单元单独配置。
- 
onOpen:在成功打开广告的时候调用。
- 
onClose:在广告关闭、发生错误或广告因调用过于频繁而未能打开的时候调用。与wasShown参数(boolean类型)一起使用,它的值表示是否显示广告。
- 
onError:在发生错误的时候调用。错误对象会传递给回调函数。
示例
ysdk.adv.showFullscreenAdv({
    callbacks: {
        onOpen: function() {
          // 广告打开后的操作。
        },
        onClose: function(wasShown) {
          // 关闭后的操作。
        },
        onError: function(error) {
          // 发生错误时的操作。
        },
    }
})
奖励视频
奖励视频是用于游戏货币化的视频广告块。用户可通过观看奖励视频获得奖励或游戏货币。
要调用广告,请使用 ysdk.adv.showRewardedVideo({callbacks:{}}) 方法。
callbacks:可选的回调函数。将为每个广告单元单独配置。
- 
onOpen:在屏幕上显示视频广告的时候调用。
- 
onRewarded:在计算视频广告展示次数的时候调用。使用此函数可指定观看视频广告的奖励。
- 
onClose:在用户关闭视频广告的时候调用。
- 
onError:在发生错误的时候调用。错误对象会传递给回调函数。
示例
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);
        },
    }
})
粘性横幅
启用粘性横幅显示:
- 打开开发者控制台并转到草稿。
- 转到粘性横幅并设置横幅显示:
- 
对于移动设备: - 纵向粘性横幅:选择位于底部或位于顶部。
- 横向粘性横幅:选择位于底部、位于顶部或位于右侧。
 
- 
对于计算机:启用桌面版粘性横幅选项。横幅将在右侧显示。 
 
- 
默认情况下,粘性横幅会在游戏启动时出现,并在整个游戏期间显示。设置显示横幅的时间:
- 在粘性横幅部分中,启用不在启动时显示粘性横幅。
- 使用以下方法设置横幅显示:
- 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:在 Yandex 端显示广告时出错。
示例
ysdk.adv.getBannerAdvStatus().then(({ stickyAdvIsShowing , reason }) => {
    if (stickyAdvIsShowing) {
        // 显示广告。
    } else if(reason) {
        // 不显示广告。
        console.log(reason)
    } else {
        ysdk.adv.showBannerAdv()
    }
})
备注
技术支持团队将协助您将已完成的游戏发布到 Yandex 游戏平台。关于开发和测试方面的具体问题,其他开发人员将在Discord 频道中进行回答。
如果您遇到 Yandex Games SDK 方面的问题或有其他问题想要咨询,请联系支持部门:
callbacks:可选的回调函数。将为每个广告单元单独配置。
onOpen:在屏幕上显示视频广告的时候调用。
onRewarded:在计算视频广告展示次数时调用此函数。使用此函数可指定观看视频广告的奖励。
onClose:在广告关闭、发生错误或广告因调用过于频繁而未能打开的时候调用。与 wasShown 参数(boolean 类型)一起使用,它的值表示是否显示广告。
onClose:在用户关闭视频广告的时候调用。
onError:在发生错误的时候调用。错误对象会传递给回调函数。
在游戏期间显示的广告单元。