环境变量

您可以获取有关游戏环境的信息。为此,请使用 environment 对象。

 1{
 2  app: {
 3    id: string;
 4  };
 5  i18n: {
 6    lang: string;
 7  };
 8  payload?: string;
 9  referrer?: {
10    type: "promo";
11    promoId: string;
12    intent?: string;
13    inappId?: string;
14  }
15}

environment 对象

包含游戏环境变量。

参数

类型

描述

app

object

游戏数据。

i18n

object

服务国际化。

payload

string

游戏地址的 payload 参数值。可选。例如,在 https://yandex.ru/games/app/123?payload=test 中,您可以按如下所示返回 testysdk.environment.payload

app 结构

参数

类型

描述

id

string

游戏 ID。

i18n 结构

参数

类型

描述

lang

string

ISO 639-1 格式的 Yandex Games 界面语言。例如,"tr" 表示游戏当前正在 Yandex Games 土耳其语界面下运行。此参数用于自动确定游戏中用户的语言(项 2.14)。

示例

1const ysdk = (await YaGames.init());
2const lang = ysdk.environment.i18n.lang; // 'en', 'ru', ...

referrer 结构

使用 ysdk.environment.referrer 处理玩家从目录中促销横幅跳转的情况。优点:

  • 对于玩家:点击促销后,玩家会直接进入目标页面 —— 看到的正是他们点击的那个优惠。这有助于提升转化率,并降低启动时的流失率。
  • 对于您:您可以跟踪每次促销的效果 —— 有多少玩家跳转,有多少完成了购买。如需收集统计数据,请额外启用 Yandex Metrica

配置

  1. 在开发人员控制台中添加促销活动。平台将自动为目录中的促销横幅生成深层链接(deeplink)。

    带有促销参数的链接示例:

    https://yandex.ru/games/app/{id}?lang=ru&referrer=promo&promo_id={PROMO_ID}&promo_intent={INTENT}&inapp_id={INAPP_ID}
    

    参数

    说明

    是否必填

    来源

    referrer

    告知平台该跳转来自促销活动。

    始终为 promo

    promo_id

    用于路由和分析的促销活动 ID。

    ID

    promo_intent

    用于游戏内路由和分析的自定义提示。

    Intent

    inapp_id

    与游戏中该促销活动关联的应用内购买 ID。

    In-app ID

  2. 在游戏中添加跳转处理:SDK 会将深层链接的参数传入 ysdk.environment.referrer 对象 —— 使用这些参数向玩家显示目标页面。

    参数

    类型

    说明

    来源

    type

    "promo"

    显示跳转来源。跟踪 type: "promo" 可收集促销活动的分析数据。

    referrer=promo

    promoId

    string

    控制台 Promos 标签页中的促销活动 ID。用于为特定促销活动配置操作并收集相关分析数据。

    promo_id

    intent

    string

    任意字符串,例如 open_starter_pack。用于配置点击促销活动后的标准操作并收集相关分析数据。可选参数。

    promo_intent

    inappId

    string

    控制台 Inaps 标签页中的应用内购买 ID。用于打开平台购买对话框。可选参数(仅适用于折扣促销活动)。

    inapp_id

  3. 验证跳转:在 Promos 标签页的 Check transition 字段中,点击 In the published versionIn the draft。如果配置正确,您将看到带有促销内容的页面:优惠、商店或具体的应用内购买。

示例

 1// 1. 初始化 SDK
 2const ysdk = await YaGames.init();
 3
 4// 2. 获取 referrer
 5const { referrer } = ysdk.environment;
 6
 7// 3. 处理来自促销活动的跳转
 8if (referrer?.type === 'promo') {
 9    if (referrer.inappId) {
10        showPurchaseScreen(referrer.inappId);
11    } else if (referrer.intent) {
12        openScreen(referrer.intent);
13    }
14}

典型场景

场景

目标受众

目的

示例

商品折扣

未付费玩家

首次付款

promo_id=SPRING_DISCOUNT
promo_intent=open_starter_pack
inapp_id=starter_pack_001

showPurchaseScreen()

VIP 优惠或开启商店

付费玩家

提升客单价

promo_id=VIP_PROMO
promo_intent=open_shop

openShop()

季节性活动

所有活跃玩家

留存

promo_id=SALE_SPRING_2026

→ 基础流程、横幅


备注

技术支持团队将协助您将已完成的游戏发布到 Yandex 游戏平台。关于开发和测试方面的具体问题,其他开发人员将在Discord 频道中进行回答。

如果您遇到 Yandex Games SDK 方面的问题或有其他问题想要咨询,请联系支持部门:

写入聊天信息

游戏数据。

游戏 ID。

服务国际化。

ISO 639-1 格式的 Yandex Games 界面语言。例如,"tr" 表示游戏当前正在 Yandex Games 土耳其语界面下运行。建议使用此参数确定用户在游戏中使用的语言。

游戏地址的 payload 参数值。 可选。 例如,在 https://yandex.ru/games/app/123?payload=test 中,您可以按如下所示返回 testysdk.environment.payload

促销活动跳转数据。如果游戏是通过促销横幅的深层链接打开的,则存在此参数。否则为 undefined

跳转来源。始终为 "promo"

控制台中 Promos 标签页上的活动 ID。

任意字符串,例如 open_starter_pack。可选参数。

控制台中 Inaps 标签页上的应用内购买 ID。可选参数(仅适用于折扣促销活动)。