跳到主要内容
版本:v4

评价开发指南

权限说明

该模块依赖权限如下:

权限使用目的权限申请时机
设备指定应用信息获取已安装的 TapTap 客户端信息用户每次使用该功能时会申请权限

同时该模块也会访问设备已安装的 Tap 客户端信息,所以接入 SDK 后将在应用 AndroidManifest.xml 中添加如下配置:

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
<queries>
<package android:name="com.taptap" />
</queries>

集成前准备

使用Tap评价功能前提需要通过 TapTap 开发者中心 > 商店 > 游戏资料 > 商店资料 中已经上传 APK, 发布设置为 立即上线 并通过 审核(开发者包如果暂时不想对外,发布状态选 敬请期待 或者 预约)。

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"
]
}
]
}
提示

如果需要接入 TapSDK Unity PC 平台,需要在使用 NuGet 集成工具,集成 K4os.Compression.LZ4 , protobuf-net 两个库,具体设置如下:

  • Packages/manifest.json 添加如下依赖:
"com.github-glitchenzo.nugetforunity": "https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity"
  • 添加完后,在 Unity 顶部菜单中如果没有出现 NuGet选项,可以重启 Unity 编辑器,包括 Unity Hub 客户端。

  • 在 Unity 顶部菜单中选择 NuGet > Manage NuGet Packages,在弹出的窗口中搜索 K4os.Compression.LZ4protobuf-net 并安装。

    最终会在 Assets文件夹下的 packages.config 文件中自动生成如下依赖:

<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="K4os.Compression.LZ4" version="1.3.8" manuallyInstalled="true" />
<package id="System.Collections.Immutable" version="7.0.0" />
<package id="System.Runtime.CompilerServices.Unsafe" version="6.0.0" />
<package id="protobuf-net" version="3.2.30" manuallyInstalled="true" />
<package id="protobuf-net.Core" version="3.2.30" />
</packages>

添加 SDK 依赖

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

远程依赖

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

1. NPMJS 接入

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

"dependencies":{
"com.taptap.sdk.core":"4.4.1",
"com.taptap.sdk.review":"4.4.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/TapSDKCore-Unity.git#4.4.1",
"com.taptap.sdk.review":"https://github.com/taptap/TapSDKReview-Unity.git#4.4.1",
}

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

本地文件导入

  1. 下载页 下载下列模块对应 unitypackage 文件,并在 Unity 项目中依次通过 Assets > Import Packages > Custom Packages 进行导入,包括:

    • TapTapSDK_Core.unitypackage TapTapSDK 核心模块,必选
    • TapTapSDK_Review.unitypackage TapTapSDK 评价模块,必选
  2. 如果当前项目已集成 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 初始化

TapTapSdkOptions 详细参数见 入门指南#快速开始

using TapSDK.Core;

// 核心配置 详细参数见 [入门指南#快速开始]
TapTapSdkOptions coreOptions = new TapTapSdkOptions();
// TapSDK 初始化
TapTapSDK.Init(coreOptions);

跳转游戏评价

using TapSDK.Review;

TapTapReview.OpenReview();

测试

为了保证上线后,游戏对于用户是否正常使用 Tap 评价功能,请务必按照以下说明完成自测。

上传 APK

新应用需要上传测试的 APK 至开发者中心,并通过审核。已上架的游戏,需确保更新资料版本中的 APK 包名和已上架的 APK 包名保持一致。

应用上线

针对已上架的游戏,开发者需确保更新资料版本中的包名和已上架的游戏包名保持一致,否则会导致玩家因包名不一致而更新失败。

针对新游戏,开发者需要在 TapTap 上线一个包含 APK 包并且通过审核(用于平台获取游戏包名,包名需与后续更新的包名保持一致)的商店资料版本,如果 APK 包当前无法对外,可将发布状态设置为「敬请期待」或「预约」。

开始测试

触发跳转游戏评价功能后正常状态是可以唤起 TapTap 应用对应游戏详情的评价页面。