跳到主要内容
版本:v4

REP 开发指南

权限说明

集成前准备

使用 TapTap REP 功能前,需要确保:

  1. 已在 TapTap 开发者中心创建游戏应用
  2. 已获取游戏的 Client ID 和 Client Token
  3. 已从 TapTap REP 平台 获取需要打开的页面链接

SDK 获取

第一步:添加 SDK 所需的外部依赖

SDK 内部使用了部分第三方库,开发者接入时需先确保 SDK 外部依赖库已正常接入,具体设置如下:

  1. SDK 使用的 JSON 解析库为 Newtonsoft-json,如果当前工程已接入该依赖库,则不需额外处理,否则需在 Packages/manifest.json 添加如下依赖:
"com.unity.nuget.newtonsoft-json":"3.2.1"
  1. SDK 使用 com.google.external-dependency-manager 管理 Android、iOS 依赖,如果当前工程已接入该依赖库,则不需额外处理,否则需在 Packages/manifest.json 添加如下依赖:
{
"dependencies": {
"com.google.external-dependency-manager": "1.2.179"
},
"scopedRegistries": [
{
"name": "package.openupm.com",
"url": "https://package.openupm.com",
"scopes": [
"com.google.external-dependency-manager"
]
}
]
}

第二步:添加 SDK 依赖

SDK 支持 Unity Package Manager本地文件导入两种集成方式,开发者根据需求选择其中一种即可,推荐使用远程依赖。

远程依赖

SDK 支持通过 NPMJS 及 GitHub 两种方式,开发者选择其中一种即可。

1. NPMJS 接入

在项目的 Packages/manifest.json 文件中添加以下依赖:

"dependencies":{
"com.taptap.sdk.core":"4.9.1",
"com.taptap.sdk.rep":"4.9.1",
}

但需要注意的是,需在 Packages/manifest.jsondependencies 同级下声明 scopedRegistries

"scopedRegistries":[
{
"name": "NPMJS",
"url": "https://registry.npmjs.org/",
"scopes": ["com.taptap"]
}
]
2. GitHub 接入

在项目的 Packages/manifest.json 文件中添加以下依赖:

"dependencies":{
"com.taptap.sdk.core":"https://github.com/taptap/tapsdk-unity-dist.git?path=/Core#4.9.1",
"com.taptap.sdk.rep":"https://github.com/taptap/tapsdk-unity-dist.git?path=/Rep#4.9.1",
}

说明:自 4.7.2 起,Unity Packages 仓库已统一为大仓 tapsdk-unity-dist,所有包通过目录区分并使用 ?path= 指定子目录、# 指定版本标签。例如 Core 模块:

"com.taptap.sdk.core": "https://github.com/taptap/tapsdk-unity-dist.git?path=/Core#4.7.2"

在 Unity 顶部菜单中选择 Window > Package Manager 可查看已经安装在项目中的包。

本地文件导入

  1. 下载页 下载下列模块对应 unitypackage 文件,并在 Unity 项目中依次通过 Assets > Import Packages > Custom Packages 进行导入,包括:
  • TapSDK_Core.unitypackage TapTapSDK 核心模块,必选
  • TapSDK_Rep.unitypackage TapTapSDK REP 模块,必选
  1. 如果当前项目已集成 Newtonsoft.Json 依赖,则忽略该步骤,否则在 NuGet.org Newtonsoft.Json 页面中通过点击右侧 「Download package」 下载库文件,并将下载的文件后缀从.nupkg 修改为 .zip,同时解压该文件并复制内部的 Newtonsoft.Json.dll 文件拷贝到工程 AssetsPlugins 目录下,另外为了避免导出 IL2CPP 平台时删除必要数据,需在 Assets 目录下创建 link.xml 文件(如果已有该文件,则添加如下内容),其内容如下:
<linker>
<assembly fullname="System.Core">
<type fullname="System.Linq.Expressions.Interpreter.LightLambda" preserve="all" />
</assembly>
</linker>

初始化

TapSDK 初始化

using TapSDK.Core;

// 核心配置项
TapTapSDKCoreOptions coreOptions = new TapTapSDKCoreOptions
{
clientId = clientId, // 必须,开发者中心对应 Client ID
clientToken = clientToken, // 必须,开发者中心对应 Client Token
region = TapTapRegionType.CN, // TapTapRegionType.CN:中国大陆,TapTapRegionType.Overseas:其他国家或地区
enableLog = true, // 是否开启 log,建议 Debug 开启,Release 关闭,默认关闭 log
preferredLanguage = TapTapLanguageType.Auto // 语言设置,默认跟随系统,当系统语言不支持时,国内为中文,海外为英文
};
// 初始化 TapSDK
TapTapSDK.Init(coreOptions);

打开链接

using TapSDK.Rep;

// 打开指定 URL
string url = ""; // 替换为实际的 URL
TapTapRep.Open(url, (errorCode, errorMessage) =>
{
if (errorCode == 0)
{
// 打开成功
Debug.Log("打开成功");
}
else
{
// 打开失败
Debug.LogError($"打开失败: {errorCode}, {errorMessage}");
}
});

参数说明

参数说明
openUrl/url要打开的 URL 地址,必须是完整的链接(包含 http:// 或 https://)。建议使用 TapTap REP 平台 生成的链接
callback/completion回调函数,返回打开结果。errorCode 为 0 表示成功,其他值表示失败;errorMessage 为错误信息

错误码说明

错误码说明
0成功
100002参数错误(URL 为空或格式不正确)
100003客户端配置错误(SDK 未初始化)
100004未知错误

测试

为了保证上线后游戏能够正常使用 TapTap REP 功能,请务必按照以下说明完成自测。

测试步骤

  1. 准备测试 URL

    • 访问 TapTap REP 平台 获取测试链接
    • 或使用游戏在 TapTap 上的详情页链接进行测试
  2. 已安装 TapTap 客户端的情况

    • 调用 open 方法后,应能正确唤起 TapTap 应用
    • 检查打开的页面内容是否正确
  3. 未安装 TapTap 客户端的情况

    • 调用 open 方法后,应能在浏览器中打开对应页面
    • 检查网页版页面内容是否正确显示
  4. 错误处理

    • 测试传入空 URL 或错误格式 URL 时的错误处理
    • 测试 SDK 未初始化时调用的错误提示