广告

您可以通过在游戏中放置广告块来获得收入。为此,您需要:

  1. 查看关于放置广告的提示和建议
  2. 使用 SDK 配置广告调用。
  3. 使用 Yandex Games 开发者仪表板启用货币化

关于放置广告的提示和建议

  • 合理放置广告,让用户注意到这是一个广告单元,而不是游戏的一部分。
  • 在游戏中插入广告的建议位置:开始游戏前、进入下一关卡前,以及输掉游戏后。
  • 您可以根据所需的频率调用奖励视频
  • 调用插屏广告单元的频率由 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);
        },
    }
})

粘性横幅

启用粘性横幅显示:

  1. 打开开发者控制台并转到草稿
  2. 转到粘性横幅并设置横幅显示:
    • 对于移动设备:

      • 纵向粘性横幅:选择位于底部位于顶部
      • 横向粘性横幅:选择位于底部位于顶部位于右侧
    • 对于计算机:启用桌面版粘性横幅选项。横幅将在右侧显示。

默认情况下,粘性横幅会在游戏启动时出现,并在整个游戏期间显示。设置显示横幅的时间:

  1. 粘性横幅部分中,启用不在启动时显示粘性横幅
  2. 使用以下方法设置横幅显示:
    • 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:在发生错误的时候调用。错误对象会传递给回调函数。

在游戏期间显示的广告单元。

上一篇
下一篇