通过应用程序启动器进行认证
如果使用艾克索拉启动器或Steam向用户交付应用程序,可以使用启动器的凭证自动认证用户身份。
详解
通过方法详解文档了解高级设置。
您可以使用艾克索拉启动器向用户交付应用程序及其更新。启动器包含一个内置的授权工具。如要避免重复输入用户名和密码的需要,可设置通过启动器授权进入应用程序。
注意
要使用启动器,需配置登录管理器。不支持使用其他授权系统。
设置SDK与启动器配合工作
- 在您的发布商帐户中设置启动器。
注:
在
config.json
文件中,请更改以下对象的值:launcher_project_id
— 指定在发布商帐户 > 启动器 > 常规设置 > 常规信息中找到的启动器IDlogin_project_id
— 指定发布商帐户 > 启动器 > 常规设置 > 验证中找到的登录管理器ID
注意
通过艾克索拉服务器进行SDK集成使用IGS & BB API调用,因此不支持启动器商店。
- 在您的应用程序中实现启动器授权逻辑。
- 生成启动器安装文件和编译版本压缩包。
- 创建应用程序编译版本。
- 将应用程序编译版本上传至艾克索拉更新服务器。
实现通过启动器进行授权的逻辑
通过启动器在应用程序中进行授权的过程如下:
- 用户授权进入启动器。
- 用户安装并运行应用程序。
- 启动器运行该应用程序并通过命令行传入用户参数。授权令牌在
xsolla-login-token
参数中传递。 - 应用程序处理命令行参数并获取令牌。
- 应用程序验证收到的令牌。
- 应用程序在不显示授权页面的情况下自动完成用户授权。
该逻辑的实现示例见演示项目的W_LoginDemo
蓝图。
注:
获得的令牌用于供SDK方法打开游戏内商店、进行支付等。
创建应用程序编译版本
- 前往您的虚幻引擎项目。
- 在
Content Browser 中,打开用户授权Map,令牌在其中得到处理。 - 在主菜单中前往
Edit > Project Settings 。 - 前往
Project > Maps & Modes ,在Game Default Map 字段中选择之前打开的授权Map。
- 前往
Plugins > Xsolla Settings 。 - 在
Project ID 字段中,指定在发布商帐户 > 项目设置 > 项目ID中找到的项目ID。 - 在
Login ID 字段中,指定在发布商帐户 > 启动器 > 常规设置 > 验证中找到的登录管理器ID。 - 根据创建的编译版本适用的平台,在主菜单中前往
File > Package Project > Windows (64 bit) 或File > Package Project > Mac 。 - 在弹出窗口中指定放置所得编译版本的目录路径。
本文对您的有帮助吗?
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。本机用户认证允许玩家通过安装的Steam客户端进入您的应用程序。设置通过Steam进行本机用户认证后,还可向应用程序添加通过Steam进行支付的功能。
要设置本机用户认证:
- 在发布商帐户中设置通过Steam进行静默认证。
- 配置您的虚幻引擎项目。
- 配置事件处理。
- 确保通过Steam进行认证。
配置您的虚幻引擎项目
- 前往虚幻引擎项目的
Config
目录。 - 在
DefaultEngine.ini
文件中添加下方代码并在SteamDevAppId
参数中指定您的Steam应用ID。
Copy
[/Script/Engine.GameEngine]
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")
[OnlineSubsystem]
DefaultPlatformService=Steam
[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"
- 在虚幻编辑器中打开项目。
- 前往
Settings > Plugins > Online Platform 。 - 在
Online Subsystem Steam 模块,勾选Enabled 复选框,然后单击Restart Now 按钮保存设置并重新加载虚幻编辑器。
配置事件处理
- 下图显示如何将节点添加至项目:

- 要通过Steam认证用户,应使用
GetSessionTicket
方法获取session ticket
。然后在调用AuthenticateWithSessionTicket
方法时传入收到的值。随后即可获得调用API时需使用的令牌。- 如要额外进行令牌验证,请添加
ValidateToken
方法回调(可选)。

确保通过Steam进行认证
- 创建适用于独立平台的虚幻引擎项目的编译文件。
- 启动Steam并登录。
- 启动您的应用程序。如果一切正确,将显示Steam弹出窗口。
本文对您的有帮助吗?
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。