🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# H5SDK接入文档 ### **demo演示地址 `http://play.jin908.com/1563422358948475/0`** ***** ## 一.适用范围 该SDK适用于H5网页游戏 ## 二.如何集成 游戏猫H5SDK推荐使用标签方式引入JS ``` <script async src="http://play.jin908.com/sdk/h5sdk.js"></script> ``` ****请保持[http://play.jin908.com/sdk/h5sdk.js](http://play.jin908.com/sdk/h5sdk.js)域名及路径不变,我们会保持版本最新,请不要下载下来使用,避免受到旧版本的影响**** ## 三.接口调用 #### 3.1 登录 (切换账号) ``` YXMSDK.userLogin() ``` 调用此接口无须传递任何参数,登录流程在H5SDK内部完成,CP只需调起即可 调用场景:进入游戏主页调用 ##### 3.1.1 登录回调 ``` YXMSDK.loginCallback = function(data) { // data = {state: '1',openId:'xxxx',message:'xxxx'} // state=> 1:成功,2,失败 // message => 返回的基础信息 // 登录回调逻辑 } ``` ##### 3.1.2 登出回调(切换账户) ``` YXMSDK.logoutCallback = function() { // 无参数返回 cp需执行角色登出游戏逻辑 // 登出回调(切换账户)回调逻辑 } ``` ### 3.2 支付 3.2.1,首先获取商品信息 ``` YXMSDK.createOrder(); ``` 参数说明: | 参数名 | 参数类型 | 必填| 参数说明| | --- | --- | ---| ---| | cpOrderId | string | 是| 订单id| | amount | number | 是|商品金额(元) (大于等于0.1元)| | goodsDesc | string |是 | 商品描述| | notifyUrl | string |是 |发货地址 | | roleId | string |是 |角色id | | roleName | string |是 |角色名称 | | roleServerName | string |是 | 角色所在区服名称 | | roleServerId | string |是 | 角色所在区服id | | extras | string |否 | 透传参数 | | roleGrade | string |是 |角色等级 | 示例: ``` YXMSDK.createOrder({ cpOrderId: '2091828', amount: 10.0, goodsDesc: '钻石', notifyUrl: 'http://mock.xxxx.cn/mockjsdata/11/sdk/notify', roleId: '1', roleName: '愤怒的小鸟', roleServerName: '角色区服名称', roleServerId: '10', extras: '', roleGrade: '10' }) ``` 3.2.2,调起支付回调 ``` YXMSDK.payCallback = function(data) { // 完成支付的回调数据 // data = {state: 1,message: 'xxx'} // state=> 1:成功,2:取消 3,失败 // message => 返回的支付结果信息 } ``` #### 3.3 角色上报 使用场景 1:创建角色 2:选择角色,进入游戏 3:等级提升 4:修改角色名称 `YXMSDK.uploadGameRoleInfo();` 参数说明: | 参数名 | 参数类型 | 必填| 参数说明| | --- | --- | ---| ---| | roleId | string | 是| 角色id| | roleName | string | 是|角色名称 | | roleServerId | string |是 | 角色所在区服id| | roleServerName | string |是 |角色所在区服名称 | | roleGrade | string |是 |角色等级 | 示例: ``` YXMSDK.uploadGameRoleInfo({ roleId: '221', roleName: 张三', roleServerId: '10', roleServerName: '角色区服名称', roleGrade: '10' }) ```