TapTap PC 端集成
本文介绍如何快速通过 TapSDK 接入 TapTap PC 端。
环境要求
- Unity
- UE4
- Unity 2019.4 或更高版本
- UE 4.26 及以上版本
项目配置
- Unity
- UE4
SDK 可以通过 Unity Package Manager 导入或手动导入,二者任选其一。请根据项目需要选择。
方法一:使用 Unity Package Manager
NPMJS 安装
从 3.25.0 版本开始,TapSDK 支持了 NPMJS 安装,优势是只需要配置版本号,并且支持嵌套依赖。
在项目的 Packages/manifest.json 文件中添加以下依赖:
"dependencies":{
"com.taptap.tds.bootstrap":"3.30.1",
"com.taptap.tds.login":"3.30.1",
"com.taptap.tds.common":"3.30.1",
}
但需要注意的是,要在 Packages/manifest.json 中 dependencies 同级下声明 scopedRegistries:
"scopedRegistries": [
{
"name": "NPMJS",
"url": "https://registry.npmjs.org/",
"scopes": ["com.tapsdk", "com.taptap", "com.leancloud"]
}
]
GitHub 安装
在项目的 Packages/manifest.json 文件中添加以下依赖:
"dependencies":{
"com.taptap.tds.login":"https://github.com/TapTap/TapLogin-Unity.git#3.30.1",
"com.taptap.tds.common":"https://github.com/TapTap/TapCommon-Unity.git#3.30.1",
"com.taptap.tds.bootstrap":"https://github.com/TapTap/TapBootstrap-Unity.git#3.30.1",
"com.leancloud.realtime":"https://github.com/leancloud/csharp-sdk-upm.git#realtime-2.3.0",
"com.leancloud.storage":"https://github.com/leancloud/csharp-sdk-upm.git#storage-2.3.0",
}
在 Unity 顶部菜单中选择 Window > Package Manager 可查看已经安装在项目中的包。
方法二:手动导入
-
在 下载页 找到 TapSDK Unity 下载地址,下载
TapSDK-UnityPackage.zip。 -
在 Unity 项目中依次转到 Assets > Import Packages > Custom Packages,从解压后的
TapSDK-UnityPackage.zip中,选择希望在游戏中使用的 TapSDK 包导入,其中:
TapTap_Bootstrap.unitypackageTapSDK 启动器,必选。TapTap_Common.unitypackageTapSDK 基础库,必选。TapTap_Login.unitypackageTapTap 登录,必选。
- 从 LeanCloud-SDK 下载页 中下载并解压 LeanCloud-SDK-Storage-Unity.zip,然后将 Plugins 文件夹拖拽至 Unity 即可。
- 下载 TapSDK UE4,TapSDK-UE4-xxx.zip 解压后将
TapBootstrap、TapCommon、TapLogin文件夹 Copy 到项目的Plugins目录中 - 重启 Unreal Editor
- 打开 编辑 > 插件 > 项目 > TapTap,开启
TapBootstrap和TapLogin模块
添加依赖
在 Project.Build.cs 中添加所需模块:
PublicDependencyModuleNames.AddRange(new string[] { "Core",
"CoreUObject",
"Engine",
"Json",
"InputCore",
"JsonUtilities",
"SlateCore",
"TapCommon",
"TapBootstrap",
"TapLogin"
});
if (Target.Platform == UnrealTargetPlatform.IOS || Target.Platform == UnrealTargetPlatform.Android)
{
PublicDependencyModuleNames.AddRange(
new string[]
{
// 推送接入
// "LeanCloudPush",
"LeanCloudMobile"
}
);
}
else
{
PublicDependencyModuleNames.AddRange(
new string[]
{
"LeanCloud"
}
);
}
初始化
- Unity
- UE4
using TapTap.Bootstrap; // 命名空间
using TapTap.Common; // 命名空间
var config = new TapConfig.Builder()
.ClientID("your_client_id") // 必须,开发者中心对应 Client ID
.ClientToken("your_client_token") // 必须,开发者中心对应 Client Token
.RegionType(RegionType.CN) // 仅支持 CN 中国大陆
.ClientPublicKey("游戏在 Tap PC 客户端配置的公钥") // 必须,开发者中心对应的 Client Public Key
.ConfigBuilder();
TapBootstrap.Init(config);
#include "TapUECommon.h"
#include "TapBootstrap.h"
FTUConfig Config;
Config.ClientID = "your_client_id"; // 必须,开发者中心对应 Client ID
Config.ClientToken = "your_client_token"; // 必须,开发者中心对应 Client Token
Config.RegionType = ERegionType::CN; // 仅支持 ERegionType::CN:中国大陆
Config.ClientPublicKey = "your_client_public_key"; // 必须,开发者中心对应的 Client Public Key
FTapBootstrap::Init(Config);
初始化时必须填入 client_id、client_token 和 client_public_key 信息,可在 开发者中心 > 你的游戏 > 游戏服务 > 应用配置 查看。
启动校验
为了保证游戏能够通过 TapTap PC 端获取必要的应用和授权信息,开发者在调用初始化接口后,必须调用该接口来完成前置启动校验,当返回值为 true 时,游戏可进行后续登录等其他业务流程,当返回结果为 false 时,SDK 会通过弹窗的形式引导用户重新通过 TapTap PC 端启动游戏或下载 TapTap PC 端,游戏需停止进行后续业务流程 。
由于校验过程属于异步操作,所以调用该接口前建议游戏先显示加载(Loading)弹窗, 当 SDK 返回结果后,再关闭该弹窗。调用示例如下:
- Unity
- UE4
using TapTap.Common;
bool isSuccess = await TapCommon.IsLaunchedFromTapTapPC();
if (isSuccess){
Debug.Log(" Tap PC 客户端校验通过");
// TODO: 进行后续登录状态判断来确定是否展示登录 UI
}else {
Debug.Log(" Tap PC 客户端校验未通过");
return; // 游戏停止后续流程
}
#include "TapUECommon.h"
TapUECommon::IsLaunchedFromTapTapPC([](const bool value) {
if (value)
{
UE_LOG(LogTap,Log, TEXT("Tap PC Client 校验通过"));
// TODO: 进行后续登录状态判断来确定是否展示登录 UI
}else
{
UE_LOG(LogTap,Log, TEXT("Tap PC Client 校验未通过"));
return;// 游戏停止后续流程
}
});
登录及获取用户信息
接入 TapTap PC 端的游戏在登录流程上与未接入的游戏存在显著差异,游戏接入后,在用户登录时,SDK 会基于当前 TapTap PC 端已登录的账号信息自动完成静默登录,无需用户进行额外操作,从而显著提升登录体验。
由于该流程为异步操作,建议开发者在发起登录前显示加载(Loading)弹窗,并在登录流程完成后关闭该弹窗,以提升用户体验。具体接入方式请参考 TapTap 登录开发指南。
合规认证
通过 TapTap PC 端完成登录后,SDK 将会通过 TapTap PC 端获取用户的实名信息并进行后续合规认证检查,避免了用户额外授权。
具体接入方式请参考 合规认证开发指南。
开发调试方式
在游戏尚未发布期间,开发者可通过添加测试用户到白名单并下载 TapTap PC 端后,根据不同开发阶段选择对应测试方案进行测试。