JS-SDK 接入指南
NOTE: 该方案适用于游戏主动引入 JS-SDK 的接入方式。另一种网页跳转接入请查看网页接入指南。

SDK下载
下载地址: http://wiki.begindcc.com/download/onlysdk/h5/
SDK引入(必接)
引入BiGuo.js文件
<script src="./BiGuo.js" type="text/javascript" charset="utf-8"></script>
初始化(必接)
请求参数
(无)
返回结果
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| code | int | 是 | 状态码 |
| msg | String | 是 | 提示信息 |
代码示例:
function init() {
osdk = new OnlySDK()
osdk.init().then(res => console.log('init result', res))
}
登录(必接)
请求参数
(无)
返回结果
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| code | int | 是 | 状态码 |
| msg | String | 是 | 提示信息 |
| channelId | int | 是 | 渠道ID |
| userId | String | 是 | 用户ID |
| token | String | 是 | Token |
代码示例:
//初始化之后可以登录
function login() {
//登录有两种返回方式 一种是function 一种是Promise,一种返回后另一种就不会返回
osdk.login(
function(res) {
console.log('cliect =', res)
userid = res.data.userId
}
).then((res) => {
console.log('cliect =', res)
// var ress = JSON.parse(res)
userid = res.data.userId
console.log('cliect =', userid)
})
}
提交数据(必接)
请求参数
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| type | int | 是 | 统计类型,1创建角色,2进入游戏,3等级提升,4登出游戏, 6充值到账 |
| userId | long | 是 | 用户ID |
| serverId | String | 是 | 服务器ID |
| serverName | String | 是 | 服务器名称 |
| roleId | String | 是 | 角色ID |
| roleName | String | 是 | 角色名称 |
| roleLevel | int | 是 | 角色等级 |
| money | int | 是 | 角色人民币对应货币余额 |
| vip | String | 是 | VIP等级 |
| roleCreateTime | long | 是 | 角色创建时间,Unix时间戳秒 |
返回结果
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| code | int | 是 | 状态码 |
| msg | String | 是 | 提示信息 |
代码示例:
function stat() {
let params = {
type: '2', //1创建角色,2进入游戏,3等级提升,4登出游戏, 6充值到账
userId: userid, //服务器验证后获取到的userid
serverId: '3',
serverName: '3区',
roleId: 'roleid123',
roleName: '一箭双调',
roleLevel: '12',
money: '0',
vip: '1',
roleCreateTime: Math.floor(new Date().getTime() / 1000),
}
osdk.stat(params);
}
提交数据(已过时)
提交数据(已过时)
请求参数
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| type | int | 是 | 统计类型,1-选服、2-创建角色、3-进入游戏、4-等级提升、5-退出游戏、6-充值到账 |
| userId | long | 是 | 用户ID |
| serverId | String | 是 | 服务器ID |
| serverName | String | 是 | 服务器名称 |
| roleId | String | 是 | 角色ID |
| roleName | String | 是 | 角色名称 |
| roleLevel | int | 是 | 角色等级 |
| money | int | 是 | 角色人民币对应货币余额 |
| vip | String | 是 | VIP等级 |
| roleCreateTime | long | 是 | 角色创建时间,Unix时间戳秒 |
返回结果
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| code | int | 是 | 状态码 |
| msg | String | 是 | 提示信息 |
代码示例:
function submit() {
let params = {
type: '2', //1选服 2创角 3登录 4升级
userId: userid, //服务器验证后获取到的userid
serverId: '3',
serverName: '3区',
roleId: 'roleid123',
roleName: '一箭双调',
roleLevel: '12',
money: '0',
vip: '1',
roleCreateTime: Math.floor(new Date().getTime() / 1000),
}
osdk.submit(params);
}
支付(必接)
请求参数
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| userId | String | 是 | 用户ID |
| cpOrderId | String | 是 | 游戏订单号要求唯一 |
| productId | String | 是 | 商品ID |
| productName | String | 是 | 商品名称 |
| productDesc | String | 是 | 商品描述 |
| currency | String | 是 | 货币类型,比如CNY,ISO4217 |
| price | int | 是 | 单位分 |
| serverId | String | 是 | 服务器ID |
| serverName | String | 是 | 服务器名称 |
| roleId | String | 是 | 角色ID |
| roleName | String | 是 | 角色名称 |
| roleLevel | int | 是 | 角色等级 |
| extension | String | 否 | 透传字段,游戏自定义参数,原样返回 |
| notifyUrl | String | 否 | 回调地址 |
返回结果
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| code | int | 是 | 状态码 |
| msg | String | 是 | 提示信息 |
代码示例:
function pay() {
let PayParams = {
userId: userid, //服务器验证后获取到的userid
cpOrderId: 'cporderid' + Math.floor(new Date().getTime() / 1000), //游戏订单号
productId: '1', //商品id
productName: '商品1', //商品名字
productDesc: '商品1', //商品描述
currency: 'CNY', //CNY:人民币
price: '100', //价格分
serverId: '3',
serverName: '3区',
roleId: 'roleid123',
roleName: '一箭双雕',
roleLevel: '12',
extension: '扩展信息',
notifyUrl: 'http://youxi.callback.com', //游戏发货地址
}
osdk.pay(PayParams);
}
登出(必接)
function logout() {
osdk.logout()
}
上报(选接)
| 参数 | 类型 | 描述 |
|---|---|---|
| loading_start | String | 开始加载游戏 |
| loading_over | String | 加载游戏结束(loading结束后,顺利进入选择区服主界面) |
| login | String | 用户点击选择区服的登录页的登录按钮 |
| login_successful | String | 用户完成登录,进入游戏内的首页 |
代码示例:
osdk.reportBOSS('loading_start')
桌面收藏(选接)
params为object属性如下(QQ小游戏渠道此参数传null)
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| title | String | 是 | 桌面快捷名称 |
| gameurl | String | 否 | 游戏地址 |
| iconurl | String | 否 | 桌面图标 必须为https地址 |
代码示例:
// params.title
// params.gameurl
// params.iconurl
osdk.addShortcut(params,function(){
console.log("success")
},function() {
console.log("fail")
})
success回调无返回值,调用回调即收藏成功
failcb回调无返回值,调用回调即收藏失败
分享(选接)
shareData 为 object 属性如下
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| title | String | 是 | 分享title |
| subTitle | String | 是 | 副title |
| url | String | 是 | 分享链接 |
| imageUrl | String | 是 | 分享背景图 |
| success的回调参数:result |
成功跳转到分享渠道后就直接返回success回调
| 参数 | 类型 | 描述 |
|---|---|---|
| type | String | 分享渠道,qq : QQ好友, weixin:微信好友, wxcircle:微信朋友圈, qzone:QQ空间, sinaweibo:新浪微博 |
fail分享失败回调
只有一些异常状况才会产生fail回调
代码示例:
// params.title
// params.subTitle
// params.url
// params.imageUrl
osdk.shareMenu(params,function(type){
console.log("success",type)
},function() {
console.log("fail")
})
打开URL(选接)
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| url | String | 是 | 链接地址 |
代码示例:
osdk.openUrl(url)
摩羯座打点(选接)
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| potinid | String | 是 | 详情查看运营提供的文档 |
| pointnum | String | 是 | 详情查看运营提供的文档 |
代码示例:
osdk.reportPoint(potinid,pointnum,function(){
console.log("success")
})
success回调无返回值,调用回调即成功