通过应用程序启动器进行认证

如果使用艾克索拉启动器或Steam向用户交付应用程序,可以使用启动器的凭证自动认证用户身份。

详解

通过方法详解文档了解高级设置。

如何设置通过启动器授权进入应用程序

您可以使用艾克索拉启动器向用户交付应用程序及其更新。启动器包含一个内置的授权工具。如要避免重复输入用户名和密码,可设置通过启动器授权进入应用程序。

注意

要使用启动器,需配置登录管理器。不支持使用其他授权系统。

本SDK使用IGS & BB API与商店进行交互。启动器使用其自己的API,所以本SDK不支持与启动器商店进行交互。

要设置端对端用户认证:
  1. 在您的应用程序中实现启动器授权逻辑
  2. 创建应用程序编译版本并将其上传到启动器。
注:
关于启动器设置和应用程序编译版本上传的详细信息见集成指南

实现通过启动器进行授权的逻辑

通过启动器在应用程序中进行授权的过程如下:

  1. 用户授权进入启动器。
  2. 用户安装并运行应用程序。
  3. 启动器运行该应用程序并通过命令行传入用户参数。授权令牌在xsolla-login-token参数中传递。
  4. 应用程序处理命令行参数并获取令牌。
  5. 应用程序验证收到的令牌。
  6. 应用程序在不显示授权页面的情况下自动完成用户授权。

该逻辑的实现示例见演示项目的W_LoginDemo蓝图。

注:
获得的令牌用于供SDK方法打开游戏内商店、进行支付等。

创建应用程序编译版本

  1. 前往您的虚幻引擎项目。
  2. 确保SDK设置显示的是您在发布商帐户启动器设置(启动器 > 常规设置 > 身份认证)中指定的登录管理器项目ID。
  3. Content Browser中,打开用户授权Map,令牌在其中得到处理。
  4. 在主菜单中前往Edit > Project Settings
  5. 前往Project > Maps & Modes,在Game Default Map字段中选择之前打开的授权Map。

  1. 根据创建编译版本的目标平台在主菜单中前往File > Package Project > Windows (64 bit)File > Package Project > Mac
  2. 在弹出窗口中,指定放置完成的编译版本的目录路径。
本文对您的有帮助吗?
谢谢!
我们还有其他可改进之处吗? 留言
非常抱歉
请说明为何本文没有帮助到您。 留言
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。
隐藏

如何设置通过Steam进行本机用户认证

本机用户认证允许玩家通过安装的Steam客户端进入您的应用程序。设置通过Steam进行本机用户认证后,还可向应用程序添加通过Steam进行支付的功能。

要设置本机用户认证:

  1. 在发布商帐户中设置通过Steam进行静默认证
  2. 配置您的虚幻引擎项目
  3. 配置事件处理
  4. 确保通过Steam进行认证

配置您的虚幻引擎项目

  1. 前往虚幻引擎项目的Config目录。
  2. DefaultEngine.ini文件中添加下方代码并在SteamDevAppId参数中指定您的Steam应用ID。
Copy
Full screen
Small screen
    [/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"
    
    1. 在虚幻编辑器中打开项目。
    2. 前往Settings > Plugins > Online Platform
    3. Online Subsystem Steam模块,勾选Enabled复选框,然后单击Restart Now按钮保存设置并重新加载虚幻编辑器。

    配置事件处理

    1. 下图显示如何将节点添加至项目:

      要通过Steam认证用户,应使用GetSessionTicket方法获取session ticket。然后在调用AuthenticateWithSessionTicket方法时传入收到的值。随后即可获得调用API时需使用的令牌。

    1. 如要额外进行令牌验证,请添加ValidateToken方法回调(可选)。

    确保通过Steam进行认证

    1. 创建适用于独立平台的虚幻引擎项目的编译文件。
    2. 启动Steam并登录。
    3. 启动您的应用程序。如果一切正确,将显示Steam弹出窗口。
    本文对您的有帮助吗?
    谢谢!
    我们还有其他可改进之处吗? 留言
    非常抱歉
    请说明为何本文没有帮助到您。 留言
    感谢您的反馈!
    我们会查看您的留言并运用它改进用户体验。
    隐藏
    上次更新时间: 2023年10月10日

    发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

    报告问题
    我们非常重视内容质量。您的反馈将帮助我们做得更好。
    请留下邮箱以便我们后续跟进
    感谢您的反馈!