抖音小游戏平台sdk对接

51游戏大约 8 分钟小游戏业务

使用说明

项目使用说明:将SDK提供的FOPlatform.ts文件放入项目libs目录下,在Main.ts文件中即可通过foplatform.xxxopen in new window() 访问FOPlatform内的相应函数。 通过layabox导出抖音小游戏项目后,将SDK提供的foplatform.js放入导出后项目的libs目录即可。

1.初始化(必接)

1.1.介绍:

该接口用于向SDK传入相关参数,方便调用其他接口时不需要每次都传入相同的参数。进入小游戏时调用。

1.2:参数说明

参数类型是否必填说明d
appKeystringyesAppid(平台方提供)
appSecretstringyes密钥(平台方提供)
gameVersionstringyes版本控制研发定义好
debugbooleanno是否打印日志(true, false)

1.3:例子

  • 调用
foplatform.init(Object params, function callback);
  • params:
params = {
		appKey:'',
       	appSecret:'',
        gameVersion:'1.0.0',
       	debug: false	//是否显示log日志,true,false
}

1.4:返回值

  • 成功:
{ 
    errno: 0, 
    error: "success"
}
  • 失败:
{ 
    errno: 999, 
    error: "fail" 
}

2.登录(必接)

2.1.介绍:

该接口用于CP向平台上报登录信息,玩家登录完成后调用

2.2:参数说明

2.3:例子

  • 调用
foplatform.login({}, function callback);
  • params:
{}

2.4:返回值

  • 成功:
{
    errno: 0, 
    error: "success",
    data: { 
        openid:"6666", 
        uid:"10001", 
        showPay: 0, 		// 是否显示支付,0隐藏,1显示
        payStatus: 0,	// 支付开启状态,0关闭,1开启
        payTips:"10001"	//支付提示,在payStatus 关闭的情况下再提示
    }
}
  • 失败:
{ 
    errno: 999, 
    error: "fail" 
}

3.上传角色信息(必接-执行2登录上报之后才可调用)

3.1.介绍:

上传玩家信息用于记录,参考参数Type类型描述情况发生时调用。

3.2:参数说明

参数类型是否必填说明d
role_idstringyes角色ID
gradenumberno角色等级
blancenumberno拥有钻石数量
vip_gradenumbernoVIP等级
server_idnumberyes所在区服ID(无分区填1)
server_namestringno区服名称
role_create_timenumberno角色创建时间(时间戳)
role_nicknamestringno角色昵称
typenumberno角色变更事件 1:创建角色;2:角色升级;3:进入游戏;4:昵称变更

3.3:例子

  • 调用
foplatform.uploadRole(Object params, function callback);
  • params:
params = {
		role_id: '5555',
       	grade: 36,
       	blance: 100,
       	vip_grade: 0,
       	server_id: 3,
       	server_name: '',
       	role_create_time:16561616,
       	role_nickname:'',
       	type: 1
}

3.4:返回值

  • 成功:
{ 
    errno: 0, 
    error: "success"
}
  • 失败:
{ 
    errno: 999, 
    error: "fail" 
}

4.支付(执行登录上报之后才可调用)

4.1.介绍:

调用平台支付接口,用于购买。

4.2:参数说明

参数类型是否必填说明d
psidnumberyes游戏区服id(无分区填1)
amountnumberyes平台支付金额(单位元,允许值见备注)
role_idstringyes角色ID
orderno_appstringno订单ID(游戏方自己创建的订单ID用于对账)
extrastringno扩展字段,透传

备注:价格只允许下列值:参考抖音小游戏的规则.

4.3:例子

  • 调用
foplatform.pay(Object params, function callback);
  • params:
params = {
		psid: 1,        //区服
        amount: 6,     //标价金额(Int)是
        role_id: '1',
        orderno_app: '1231456',
        extra: '1231456'
}

4.4:返回值

  • 成功:
{ 
    errno: 0, 
    error: "success"
}
  • 失败:
{ 
    errno: 999, 
    error: "fail" 
}

5.游戏分享

5.1.介绍:

该接口用于CP游戏分享

5.2:参数说明

5.3:例子

  • 调用
foplatform.shareGame(function callback);
  • params:

5.4:返回值

  • 成功:直接弹出分享窗口
{
  "errno": 0,
  "error": "success"
}
  • 失败:
{ 
    errno: 999, 
    error: "fail" 
}

6.游戏公告

6.1.介绍:

该接口用于CP游戏获取游戏公告列表

6.2:参数说明

6.3:例子

  • 调用
foplatform.notice(function callback);
  • params:

6.4:返回值

  • 成功:
{
    "errno": 0,
    "error": "success",
    "data": {
        "open_tips": 0,
        "notice_list": [
            {
                "id": "16",
                "gid": "100",
                "title": "《龙域世界》25区4月11日9点火爆开启",
                "content": "<p>​<br></p><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 《龙域世界》是一款西方魔幻动作类RPG游戏,在这款游戏中,玩家将扮演一名初入龙域大陆的人类战士,与神圣的远古巨龙们共同抵御强大的邪恶势力,人类勇士们在危机四伏的环境中一点点历练成长,最终成为抵御邪恶实力的重要力量。</p><p>开服时间:2023年4月11日9点<br>服务器名:25区-龙域战歌<br>测试类型:不删档测试</p><p><br></p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p>",
                "menu_name": "开服公告",
                "content_img_url": "",
                "update_time": "2023-04-11 09:42:33"
            },
            {
                "id": "15",
                "gid": "100",
                "title": "《龙域世界》4月6日版本更新公告",
                "content": "<p> </p><p>亲爱的勇士:</p><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 为向您提供更为丰富的游戏内容,《龙域世界》 全服将于2023年4月6日10:30—11:30进行停服更新,届时请大家提前做好下线准备,以免造成不必要的损失。服务器开启时间将根据更新进度提前或延迟,由此给大家带来的不便,敬请谅解!</p><p>更新区服:1区-14区<br>\n\n更新时间:2023年4月6日10:30—11:30</p><p>更新内容:</p><p>1、优化息屏,优化后手机将不息屏;<br>\n\n2、优化选服页,选服页默认玩家上次登录的区服;<br>\n\n3、增加断线重连功能;<br>\n\n4、优化游戏资源,游戏更流畅;<br>\n\n5、新增寻宝玩法,每日充值,打怪掉落也可获得寻宝钥匙;<br>\n\n6、新增大陆屠龙,开启屠龙任务之后可进入第四大陆;<br>\n\n7、新增装备铭文玩法,可以第四大陆npc处参与玩法;<br>\n\n8、新增第四大陆地图数量;<br>\n\n9、新增龙之特戒,幸运戒指将合并至龙之特戒内;<br>\n\n10、新增死亡后引导弹窗;<br>\n\n11、装备图标及名称更新;<br>\n\n12、新增部分玩法公告提醒;<br>\n\n13、优化资源找回,更新后找回内容将和实际活动活动内容一致;<br>\n\n14、龙池夺宝地图替换;<br>\n\n15、推荐打宝地图机制优化,将按照当前转生等级可进入的地图推荐;<br>\n\n16、神秘商店暂时关闭;<br>\n\n17、远古遗迹第五层暂时关闭;<br>\n\n18、修复部分已知bug;<br>\n\n19、优化部分画面表现;<br>\n\n20、调整转生攻击力百分比加成;</p><p><br>\n<br>\n</p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p>",
                "menu_name": "更新公告",
                "content_img_url": "",
                "update_time": "2023-04-11 09:24:56"
            }
        ]
    }
}
  • 返回信息说明:
参数类型说明
open_tipsnumber公告开关0:关闭不弹出,1:开启公告(默认公告发行是关闭状态)
notice_listnumber公告列表
-- menu_namestring公告菜单名称
-- contentstring公告内容
-- content_img_urlstring公告内容图片链接地址
  • 失败:
{ 
    errno: 999, 
    error: "fail" 
}

7.内容安全

7.1.介绍:

该接口用于CP游戏检查敏感内容,前端发送聊天之前先调用该接口检查

7.2:参数说明

7.3:例子

  • 调用
var content = “123”;
foplatform.checkWords(content,function callback);
  • params:

7.4:返回值

  • 成功:
{
  "errno": 0,
  "error": "内容合法",
  "data": []
}
  • 失败:
{
    errno: 1, 
    error: "内容不合法,
    data: []

}

8.订阅

8.1.介绍:

该接口用于CP游戏唤起订阅

8.2:参数说明

8.3:例子

  • 调用
foplatform.subScript(function callback);
  • params:

8.4:返回值

  • 成功:如果没有选择总是允许会一直弹订阅窗口,如果选择了就不在弹窗口
{
  "errno": 0,
  "error": "success"
}
  • 失败:
{
    errno: 999, 
    error: "fail
}

9.检查是否订阅

9.1.介绍:

该接口用于CP游戏判断是否订阅

9.2:参数说明

9.3:例子

  • 调用
foplatform.checkSubscription(function callback);
  • params:

9.4:返回值

  • 成功:订阅过
{
  "errno": 0,
  "error": "success"
}
  • 失败: 没有订阅
{
    errno: 999, 
    error: "fail
}

10.抖音加桌判定

10.1.介绍:

判定用户是否加桌,结合游戏是否展示加桌icon相关

10.2:参数说明

10.3:例子

  • 调用
foplatform.checkShortcut(function callback);
  • params:

10.4:返回值

{
  "errno": 0,
  "exist":true,//true表示用户已经加桌,false用户没加桌可以展示加桌icon
  "error": "success"
}
  • 失败: 游戏内不能够展示加桌的icon
{
    errno: 999, 
    error: "fail
}

11.抖音加桌

11.1.介绍:

该接口用于抖音加桌增加复访

11.2:参数说明

11.3:例子

  • 调用
foplatform.addShortcut(function callback);
  • params:

11.4:返回值

  • 成功:订阅过
{
  "errno": 0,
  "error": "success"
}
  • 失败: 没有订阅
{
    errno: 999, 
    error: "fail
}

12.收入广告接入

12.1.介绍:

该接口用于抖音收入广告接入

12.2:参数说明

12.3:例子

12.3.1:banner广告

foplatform.showBannerAd(params,function callback);
  • params:默认传递空{},参数留着后续做兼容
var params = {
    left: 0,
    top: 0,
    width: 500,
    height: 240
}

12.3.2:激励视频广告调用

foplatform.showVideoAd(params,function callback);
  • params:默认传递空{},参数留着后续做兼容
var params = {};

12.4:返回值

  • 成功:广告观看结束关闭,游戏可以自定义游戏下一步逻辑
{
  "errno": 0,
  "error": "success"
}
  • 失败: 广告加载失败或者未观看技术关闭广告
{
    errno: 999, 
    error: "fail
}

13.客服

13.1.介绍:

该接口用于抖音及头条客服按钮及使用

13.2:调用

foplatform.kefu(params,function callback);

13.3:调用

{
    type: "image", // image | text
    image: "./test.jpg",
    style: {
        left: 20,
        top: 40,
        width: 100,
        height: 50,
    }
}

13.4:返回值

  • 成功:按钮创建成功返回
{
  "errno": 0,
  "error": "success"
}
  • 失败: 按钮创建失败返回
{
    errno: 999, 
    error: "fail
}

14.校验侧边栏是否可用

13.1.介绍:

该接口用于校验侧边栏是否可用

13.2:调用

foplatform.checkScene(function callback);

13.3:调用


13.4:返回值

  • 成功:表示可用
{
  "errno": 0,
  "error": "success"
}
  • 失败: 用户不支持侧边栏
{
    errno: 999, 
    error: "fail
}

15.侧边栏调用

13.1.介绍:

该接口用于抖音侧边栏的展示,以及点击游戏图标进入游戏的回调

13.2:调用

var params = {};
foplatform.navigateToScene(params,function callback);
//callback,用户调起侧边栏然后点击侧边栏后的回调

13.3:调用


13.4:返回值

  • 成功:用户点击侧边栏的游戏图标进入游戏的返回,点击模拟器的侧边栏进入小游戏时,会触发tt.onShow事件,事件的回调参数中,scene值为021036,launch_from为homepage,location为sidebar_card表示从侧边栏进入游戏
{
    "scene": "021036",
    "query": {},
    "showFrom": 0,
    "refererInfo": {
        "appId": "tt6b591de4f465b4d402"
    },
    "launch_from": "homepage",
    "location": "sidebar_card"
}
  • 失败: 表示用户启动侧边栏失败或者从侧边栏进入游戏失败
{
    errno: 999, 
    error: "fail
}