Skip to main content

登录接入

客户端登录接入

以下步骤紧接步骤五

步骤六:主机游戏项目配置

  1. 安装并激活 Input System 包:
note

Input System 需要 Unity 2019.1 或更高版本与 .NET Framework 4 运行,不适用于运行 .NET Framework 3.5 的项目。

在 XSX 真机运行时需匹配 1.6.1 版本的 Input System,同时附带安装 com.unity.inputsystem.gxdk-1.0.1 的拓展包,如果遇到引入问题请联系 Player Network 助手。

更多详情,请参见 Input System 安装指南.

  1. 从 Unity 的主菜单中,进入 Window > Package Manager 以打开 Unity Package Manager。

  2. 点击 Advanced,确认 Show Preview Packages 已启用。

  3. 从左侧的列表中,选择最新的 Input System 包后,点击 Install

    Image:Introducing InputSystem

  4. 从 Unity 的主菜单中,进入 Edit > Project Settings后,点击 Player

  5. Active Input Handling 的值设置为 Input System Package (New)

    Image:Setting Active Input Handling

  6. 添加宏定义:

    1. 从 Unity 的主菜单中,进入 Edit > Project Settings 后,点击 Player

    2. 打开 Other Settings 面板,浏览至 Scripting Define Symbols

    3. INTL_CONSOLE_GAME_INPUT 添加到文本框中,使用分号分隔。

      Image:Add INTL_CONSOLE_GAME_INPUT macro definition

    4. Assets/LevelInfinite 中打开程序集定义文件 LevelInfinite.asmdef,然后在 Assembly Definition References 中添加 Unity.InputSystem

      Image:bug

步骤七:添加回调处理

需添加 AuthResultObserverLIEventObserver 回调来处理登录组件事件。

回调数据结构为 INTLAuthResult,其中包含登录信息和账号信息,例如 OpenID、账号绑定信息和账号注销状态。

// Add callbacks
INTLAPI.AddAuthResultObserver(OnAuthResultEvent);
LevelInfinite.AddLIEventObserver(OnLIBaseEventResult);

// Handle AuthResultObserver callback result
private void OnAuthResultEvent(INTLAuthResult AuthResult)
{
switch (AuthResult.MethodId)
{
case (int)INTLMethodID.LI_LOGIN_ENTER_GAME:
if(AuthResult.RetCode == (int)ERROR_CODE.SUCCESS) {
Debug.Log("LI PASS Login success");
} else {
Debug.Log("LI PASS Login failed, ret_code = " + AuthResult.RetCode + ", ret_msg = " + AuthResult.RetMsg);
}
break;
default:
break;
}
}

// Handle LIEventObserver callback result
private void OnLIBaseEventResult(LIBaseEventResult liRet)
{
switch (liRet.lIEventType)
{
case LIEventType.GN_READY:
break;
default:
break;
}
}

步骤八:完成登录流程

调用 LoginChannelWithLIPass 接口打开 LI PASS 登录组件,并指定玩家使用的登录渠道。

如果当前账号尚未关联 LI PASS,且玩家是第一次进入游戏,登录组件将显示关联 LI PASS 的用户界面。

LevelInfinite.LoginChannelWithLIPass(INTLChannel.PlayStation);

步骤九:配置第三方渠道信息

LI Pass 支持多个主机端第三方渠道:

PlayStation

Nintendo Switch

Xbox Series X|S 和 WinGDK

后台登录接入

请参考 接入概览中的 后台接入