QQ游戏 开放平台

欢迎来到QQ游戏开放平台 管理中心 | 注册 | 开发者论坛
GameAPI.BuyBox

4.1.1功能说明

弹出购买支付框,前端JS接口

4.1.2调用说明

1.接口包含

页面必须包含QQGame开放平台提供的js库,才能调用各js接口,如下:
//qqgameplatcdn.qq.com/social_hall/js/jquery.js
//qqgameplatcdn.qq.com/social_hall/js/jquery.pm.js
//qqgameplatcdn.qq.com/social_hall/app_frame/qqgamelib.js
游戏方可以直接在页面头部加载上面的js库,如下图:

也可以为性能考虑,在需要调用js接口前,动态加载上面的js库,不做约束。

2.域名检查
首先保证应用所在的域名是app$appid.qqgameapp.com或s\d\d.app$appid.qqgameapp.com,或者为qqgame.app$appid.twsapp.com, $appid为开放平台部分配的应用接入id,\d代表任一0~9整数。 多区多服应用域名支持app$appid.openwebgame.qq.com

3.接入QQGame
APP接入页面均内嵌在开放平台接入页面中,Javascript API定义在父页面中,各APP通过回调函数满足定制需求,调用API前需要提供域名到QQGame平台,并在平台发布白名单后在大厅测试专区中,使用测试号码进行调试。

4.调用接口前
  请先向QQGame平台提供应用定义邀请字符串(不超过60中文字符)及应用邀请图片,通过审核后更新配置即可使用。
如:
欢迎进入xx世界。。。
并提供一张74*74链接图片URL(注:建议图片格式为png/jpg/gif)
Tips的图片,尺寸规格为80*90(注:图片格式为静态gif)

5.被邀请者接受邀请会启动游戏。游戏启动链接中会包含如下信息:
&invitor=OPENID&invkey=INVKEY¶m=GAMEPARA,其中:
invitor为邀请发起者的openid
Invkey为邀请验证字段,后续会提供api验证该invkey的正确性
param为应用自定义参数(长度上限256bytes)

4.1.3调用方式(参考FOR QQ)

GameAPI. BuyBox.show(appid, url, sandbox, title, close_cb, buy_cb);

参数名称 含义
appid 分配给应用的扣费id, 一般和应用id一致
url 扣费openapi返回的url地址,获取方式见open官网api说明: //wiki.open.qq.com/wiki/v3/pay/buy_goods
sandbox 是否沙箱环境(1:是,0:否)
沙箱环境自助Q币添加Url:
cpay.qq.com/qz/go/18218

充值步骤:
1先以测试号登录open.qq.com
2打开上述url即可进行充值
title 对话框标题
close_cb 关闭对话框的回调函数(无参数)
buy_cb 确认购买成功后的回调函数(无参数)
disturb 可选。仅当接入“道具寄售”模式的应用使用游戏币快捷支付功能时,必须传该参数。取值固定为0。 其他支付场景不需要传入该参数。

4.1.4 范例

GameAPI.BuyBox.show(
10001,
“”,//填写获取到的url
1,
"testbuy",
function() {alert('close callback!');},
function() {alert('buy callback!');}
);



如果是接入“道具寄售”模式的应用使用游戏币快捷支付功能,则调用方式如下:
GameAPI.BuyBox.show(
10001,
“”,//填写获取到的url
1,
"testbuy",
function() {alert('close callback!');},
function() {alert('buy callback!');},
0);
如果支付出错(如:用户余额不足等),则会弹出提示框如下图所示;否则回调buy_cb