Skip to main content
将 Steamworks 添加到游戏项目后,只需调用 SteamAPI_Init 函数即可初始化 API。可选地,你可以调用 SteamAPI_RestartAppIfNecessary,如有必要通过 Steam 重启应用。而初始化 XBOX Game Development Kit(GDK)略复杂一些,因为不存在一个统一的应用用来启动游戏并与不同游戏服务通信,像 Steam 那样。 要开始使用 XBOX Game Development Kit(GDK)中的 API,请按以下步骤操作。
  1. MicrosoftGame.config 文件添加到你的项目中。
  2. 初始化 Gaming Runtime 服务。
  3. 初始化 XBOX Services API,以便调用 XBOX Live 获取用户身份、云存档、成就等。
  4. 将用户登录到 XBOX Live。保存成功登录后返回的句柄与 XBOX 用户 ID(XUID),以备后用。
在 Steam 上,你在加载时就可以访问用户的 Steam ID 与所有 API,因为通过 Steam 启动器启动游戏时,它会自动注入用户的账号信息。XBOX Live API 会被多个启动器上的游戏使用,因此不会自动获得这些信息 —— 你需要在启动时手动登录用户。
关于如何完成第 1 步,参见 MicrosoftGame.config 概览 第 2–4 步的信息可在 XBOX Live API 入门 中找到(以下也做了简要汇总),并请务必按该主题“清理 XSAPI”一节所描述的行为实现。Gaming Runtime 与 XBOX Services API 初始化完成后,你就可以将用户登录到 XBOX Live。如果留空,系统会自动为你创建 XTaskQueue,你无需自行创建。

将用户登录到 XBOX Live

使用 XUserAddAsync API 将用户登录到 XBOX Live。如果是玩家第一次在你的游戏中登录,会显示一份你的游戏请求的权限清单。他们需要显式授权这些权限,以便访问其 XBOX Live 账号。 登录成功后,你可以使用传入 XUserAddResult 函数的 XUserHandle 引用。它可用于获取该 XBOX Live 用户的信息,例如 gamertag、玩家头像、登录状态、年龄组以及权限等。 用户第一次登录之后,只要在他们上次启动游戏后不需要处理 UI 提示(例如新的隐私协议),他们应该能够静默登录成功(即无需玩家操作)。不过,你仍然需要发起这些 API 调用来获取身份访问权限。 调用 XBOX Live API 需要 XblContextHandle。你可以使用 XblContextCreateHandle 函数,通过 XUserHandle 获取 XblContextHandle
最后修改于 2026年8月13日