# 抖音小游戏UnitySDK
# 接入必读
- 发行SDK以Unity Package(.unitypackage文件)的形式提供,可以按照接入流程STEP 2: 下载集成SDK提供的地址直接下载。需要注意的是,发行SDK依赖抖音官方提供的StarkSDK (opens new window)、Unity官方提供的游戏开发引擎UnityEngine (opens new window),cp研发需要自行准备并安装好依赖。
- 发行SDK需要接管用户登录行为,cp必须按照本文档接入流程STEP 4: 接入登录调用SDK提供的api进行登录。SDK登录成功后会返回发行用户id、小游戏用户openid、小游戏用户unionid等信息,cp可以按照自己的需要进行使用。特别注意,cp研发不要再调用StarkSDK.API.GetAccountManager().Login进行登录,不然会造成发行SDK登录失败。
- 发行SDK目前只会接管StarkSDK的初始化和登录功能,其他功能比如获取用户信息等cp可以直接查阅StarkSDK文档去调用对应API即可。
- 发行服务采用统一的中控服务来管理小游戏官方服务端api接口调用凭证access_token,cp如果需要使用凭证自己去调官方服务端api获取信息,请务必参照文档通过调用发行服务端api接口获取。特别注意,cp不要自己调用小游戏官方服务端接口去获取access_token,否则会让发行服务维护的凭证失效,导致投放损失。
- 广告行为数据的上报量的准确性会直接影响小游戏发行的效果,请cp研发同学务必按照本文档接入流程STEP 5: 接入广告上报行为上报完全所拥有的广告类型的创建、加载、展示、关闭、隐藏事件。自测没问题后请联系发行技术对接同学确认上报是否正确,确定上报无误后再发布提审。
- cp需要确保接入发行sdk的游戏包不会自主回传广告事件给巨量引擎,否则会造成投放数据紊乱,造成投放损失。
# STEP 1:接入准备
接入发行SDK前需完成如下工作:
# 添加服务器域名
参照服务器域名白名单配置文档 (opens new window)添加https://api.mcfrogtech.com
和https://api.shxqwl.com
到request合法域名。
# 提供小游戏信息
CP需要提供小游戏名、小游戏ID(AppID)和密钥(AppSecret)给发行对接技术人员,为了安全起见,SDK会将密钥存储在服务端,不会在客户端存储。AppID和AppSecret获取方式参考文档 (opens new window)。
# CP提供历史用户已注册激活校验接口
如果待接入的小游戏不是一个新包或者CP已经进行过投放,为了保证投放数据准确性,CP需要提供可用来校验小游戏用户是否在CP投放期内已经完成注册激活过程的API接口,API接口需要满足以下条件:
# API名
CP可以自定义API名,将API名提供给发行对接技术人员。
# 调用方式
GET
# 请求参数
参数 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
open_id | string | 无 | 是 | 小游戏用户open_id |
# 响应参数
参数 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
registered | boolean | 无 | 是 | 是否注册激活,true表示已经注册激活,false表示没有注册激活。 |
# STEP 2: 下载集成SDK
# 下载SDK
# 集成SDK
将下载下来的.unitypackage文件导入Unity Editor中即可。
# STEP 3: 初始化SDK
# 方法定义
async UniTask<int> Init(string appId);
# 参数介绍
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
appId | string | 无 | 是 | 小游戏appId |
# 返回值介绍
返回0
表示成功;返回1
表示SDK已经初始化过了;返回2
表示StarkSDK初始化失败。
# 调用示例
一般在GameController脚本的Start回调中调用Init初始化SDK,调用方式如下:
int result = await McfrogtechMiniSDK.TT.Init("APP_ID");
if (result == 0)
{
// 成功
}
else
{
// 失败
}
# STEP 4: 接入登录
# 方法定义
async UniTask<McfrogtechMiniSDK.SDKLoginData> Login();
# 参数介绍
无
# 返回值介绍
McfrogtechMiniSDK.SDKLoginData
# 调用示例
var data = await McfrogtechMiniSDK.TT.Login();
# STEP 5: 接入广告行为上报
目前由于一些技术问题,SDK无法准确地自动收集用户广告行为数据,因此,为了更好地帮助小游戏进行推广,需要CP方上报用户广告关键行为给SDK。
# 方法定义
async UniTask ReportAdTrace(string traceName, McfrogtechMiniSDK.Ad ad);
# 参数介绍
参数 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
traceName | string | 无 | 是 | 广告行为事件名称,创建、加载、曝光、关闭、隐藏分别对应create_ad 、load_ad 、show_ad 、close_ad 、hide_ad 。 |
ad | McfrogtechMiniSDK.Ad | 无 | 是 | 广告行为对应数据,UnitId 字段上报广告单元id,Type 字段上报广告类型,取值为rewarded_video (激励视频广告)、interstitial (插屏广告)、banner (banner广告)。 |
# 返回值介绍
void
# 调用示例
尽量上报全创建、加载、曝光、关闭、隐藏这五类事件,以便于精确的分析用户行为,更有利于投放。
await McfrogtechMiniSDK.TT.ReportAdTrace(
McfrogtechMiniSDK.Ad.TraceName.CreateAd,
new McfrogtechMiniSDK.Ad("testunitId", McfrogtechMiniSDK.Ad.TypeName.Interstital)
);