查看: 10438|回复: 7

【网游SDK接入】客户端接口(常见问题FAQ)

[复制链接]

63

主题

0

魅力

4万

经验

发表于 2016-1-12 17:07:56 |显示全部楼层
本帖最后由 106563120 于 2018-7-13 10:20 编辑

客户端接口(常见问题FAQ)--内容较长,建议搜索关键字查找


1、初始化(initSDK)
1)初始化接口在哪里调用
建议初始化接口放在游戏启动后直接调用

2)初始化接口传递的cpid\gameId\serverId\serverName在哪里获取
gameId:在开放平台-SDK接入那里获取
cpid、serverId:参数已废丢,请注释掉或传0,注意:serverId不可传其它参数,会影响充值
serverName:传空或不用传

3)客户端如何切换为正式/测试环境
目前客户端测试环境已经下架,初始化debugmodel请不要设置为true,否则初始化会失败报错“公钥更新失败”;直接设置成false或者不设置默认为false生成环境即可!


4)初始化过程中出现ucgameconfig.ini无法找到的错误
该错误日志是警告提示,SDK上线需要修改的文件,没有任何影响,可以忽略

5)初始化过程中提示“网络无响应”
请检查当前手机网络是否正常,切换网络测试看看,如果网络正常但无法初始化,请联系技术接口人处理

6)初始化失败,提示“code:10,游戏信息配置错误”
请检查传递的gameId参数是否为九游开放平台提供的游戏参数

7)一般初始化失败,主要检查以下几点原因:
1、检查jar包、so库、manifest配置等所有的SDK资源是否已经完整
2、初始化参数特别是gameId是否传递正确,打印出来看下
3、初始化debug_mode 请设置为 false,否则报错“公钥更新失败”
4、检查网络是否可行  切换网络试下

8)初始化失败,提示“SdkActivity`onCreate`不能获取入口实例,需要重新初始化”
请检查下logcat运行时报异常的日志,可能原因是以下几种:
1、initSDK接口同时调用多次,或接口调用过程中又再次调用,如初始化失败,请在收到回调后再重新调用
2、清除下缓存数据,再重启游戏试试

9)Unity3d游戏初始化执行后游戏黑屏,过几秒才正常
Unity3d游戏启动时直接调用SDK初始化可能会出现unity3D跟activity冲突,如果出现黑屏执行时间长的话,建议将initSDK接口放在unity启动完成到加载游戏界面后再调

10)首次初始化只看到四个“...”,看不到logo
此为正常现象,SDK设计如此,请游戏忽略这问题

11)如何查看当前接入的SDK版本
可以用以下几种方法查看
1、检查导入的sdk Jar包,jar包名上有写明,如“sdk-7.3.4.2.jar”,则为7.3.4.2版本
2、检查初始化的日志,TAG”UCGameSDK”,system.config内带有”ve”字段,即版本
3、SDK4.X以下,在登录界面-忘记密码,下方有显示版本号
SDK4.X以上,在初始化启动页右下角有显示版本号

2、登录(login)
1) 登录失败,提示“code:10,游戏信息配置错误”
请检查传递的gameId参数是否为九游开放平台提供的游戏参数

2)调用登录接口后,登录界面不显示

1、请确认是否有收到初始化成功回调,初始化失败的情况下无法正常调用登录接口,请先处理好初始化接口
2、日志打印输出是否有正常调用到SDK登录接口,若无,请确认是否在调用SDK登录接口前已经出现游戏错误
3、日志如有类似说明线程问题,请检查登录接口是否在UI线程调用,要求放UI线程调用

3)调用登录接口后,获取的sid为空
1、请确认是否有收到登录失败的回调,只有登录成功回调才会返回sid

2、请确认是否有
写登录回调事件正常获取sid,示例如下:
private SDKEventReceiver eventReceiver = new SDKEventReceiver() {

    @Subscribe(event = SDKEventKey.ON_LOGIN_SUCC)
    private void onLoginSucc(String sid) {
//sid即token,需发送给游戏服务器做登录校验获取accountId用户唯一标识,客户端无法获取用户唯一标识
        appendText("登录成功,sid:" + sid);
    }
}



4)调用登录接口后,游戏闪退
请检查下logcat运行时报异常的日志,可能原因是以下几种:
1、日志如有类似说明权限的,请检查游戏配置的manifest 权限是否已全部添加SDK接入文档要求的
2、日志如有类似说明线程问题,请检查登录接口是否在UI线程调用,要求放UI线程调用

5)调试SDK,能否提供测试的账号
请直接在当前客户端“快速注册”账号测试游戏即可,SDK无限制账号测试


6)测试使用的账号,忘记密码,能否重置下密码
正式环境的密码丢失,可以走申诉,申诉地址:http://kf.uc.cn/aq


7)客户端如何获取账号标示和昵称
SDK客户端登录成功后,游戏客户端通过getsid()方法获取SDK客户端的sid,发送给游戏服务器,游戏服务器使用此sid进行服务端接口调用,即可获取账号标示(accountId)及昵称,随后游戏服务器向游戏客户端发送账号标示及昵称即可。(注:游戏客户端无法直接从SDK客户端获取账号标示)
详细流程可见接入文档“02-技术文档-SDK总体机制\UC游戏_SDK_开发参考说明书_总体机制_vX.X.X.pdf”(注:X.X.X为版本号)

8)非首次登录成功后退出游戏,第二次不会自动登录
可能原因
1、游戏退出时或调登录接口前有调用logout接口,请去掉
2、悬浮图标内关闭自动登录,请开启后退出游戏重进看看


14)使用SDK激活码系统,需要另外接入SDK吗
不需要,联系九游运营人员配置激活码系统即可,按正常流程接入,不用额外接入接口或修改接口,需要测试的话,请向运营人员索要激活码

3、扩展数据接口(submitExtendData)
常见问题(FAQ)请到这里查看:
http://bbs.9game.cn/thread-29568400-1-1.html

4、充值(pay)
1) 充值界面提示[backcolor=rgba(238, 241, 246, 0.314)]抱歉,服务暂不可用,请返回游戏重试(03)
需要游戏先在开放平台完成在线签约,签署成功后才能开支付,如确认合同签署成功,但仍无法支付,请联系技术接口人核查支付权限是否已开通

2) 充值界面提示[size=13.3333px]抱歉,游戏请求参数不正确,请稍后再试(09)
检查
1)签名的要求:MD5(签名内容+apiKey);
2)apikey为游戏在开放平台-SDK接入参数那里获取的apikey,对应好每一款游戏
3)签名内容要求将所有传递的参数参数名称key按照字典顺序排列(a-z),值为空串需参与签名,值为null的参数不需要参与签名, sign和signType也不参数签名
4)签名内容不应包含“&”符号,拼接签名内容时需把“&”符号剔除
5)accountId需传递当前进入账号进入游戏后服务端验证会话verifySession返回的accountId,此为用户唯一标识,不可传sid或其它
6)签名示例(如apikey:123456):accountId=123452132amount=100.00callbackInfo=xxxxxcpOrderId=XXXXXXgrade=12notifyUrl=http://192.168.1.1/notifypage.do123456

3)客户端setNotifyUrl后台还有配置回调地址地方,优先取哪个
优先取客户端传递的回调地址,如无传递再去找后台配置的地址

4 )客户端callbackInfo、cpOrderId分别传什么
cpOrderId:自定义订单号,对应服务端回调时的cpOrderId,长度不超过30
callbackInfo自定义参数,对应服务端回调时的callbackInfo,长度不超过250
客户端设置后,两个参数通过回调信息透传给游戏服务器,便于游戏能区分充值用户的个人信息(注:callbackInfo不传递的话,服务端不回调cpOrderId,customInfo不管有没传递,均会回调)

5)后台配置回调地址有九游包和豌豆荚包吗,需要配置不同的吗
1、如果2个包体里面支付接口均未配置notifyURL,则都读取后台配置的支付回调地址

2、如果需要2个包体分别回调不同的支付接口地址,可其中一个游戏包内配置对应回调地址即可;另外的游戏包直接读取后台配置的回调地址; 也可以两个包内分别配置
3、包体内配置回调地址有一个缺点:若游戏需要更换支付回调地址时,需要重新出包更新地址,并且旧包老用户充值均会收到影响,需要引导老用户更新到新包

6) 游戏横屏但充值界面显示为竖屏,怎么修改
在调用SDK初始化方法前(initSDK),加入以下此行代码即可:
gameParamInfo.setOrientation(UCOrientation.PORTRAIT);
详情见论坛:http://bbs.9game.cn/thread-3183756-1-1.html

7) SDK支付界面横屏但跳转支付宝、银行卡为竖屏,怎么修改
支付宝、银行卡强制竖屏,无法修改,如果横屏游戏切屏后导致游戏异常退出或黑屏等其它现象,请游戏修改manifest文件将所有的activity都加上screenSize属性,如下:
android:configChanges="keyboardHidden|orientation|screenSize"

8)SDK支付界面点击“支付”按钮,未充值成功就收到ON_CREATE_ORDER_SUCC回调
支付接口一共两个回调,一个是订单生成回调ON_CREATE_ORDER_SUCC,一个是界面关闭回调ON_PAY_USER_EXIT,在充值界面选择支付方式后点击“支付”就会触发下单成功的回调
ON_CREATE_ORDER_SUCC,此处并非充值成功,用户可能继续支付,或取消订单,充值结果请留意服务端收到的回调信息判断,客户端没有充值成功的回调接口

9) 客户端是否能获取充值成功的回调
客户端不能获取充值成功或失败回调,充值完成后,SDK服务器会回调充值结果至游戏配置好的回调地址上,游戏通过服务器收到的回调信息判断是否充值成功,orderStatus为S成功,F失败,游戏判断订单为S再处理下发游戏币,F不予下发
详情查看论坛说明:http://bbs.9game.cn/thread-3650128-1-2.html

10) 如何测试充值,是否能提供测试号
不提供测试账号,游戏自行在登录界面注册账号即可,可在测试阶段将金额调到最低0.01元进行测试,上线前需记得更改回正确金额

11) 账号已经充值了U点,但支付方式不显示“U点”支付
U点支付最低金额为“1元”且金额需为整数,如当前传递的amount值低于“1”,则不显示U点入口,请游戏调整充值金额

13) 如何使用定额支付,或不定额支付
调pay充值接口前传递的amount值,如不传或用0即显示非定额支付界面,可自行填入充值的金额,如amount值的值为固定金额,则需要按传入的对应金额支付(amount值单位为元)

14)客户端有没有查询充值订单接口
不提供,充值成功后SDK服务端主动回调订单给游戏服务器,不提供客户端回调充值结果

15)充值后在哪里查询充值结果
可以通过“开放平台-合同与财务-支付详情”,输入账号或订单号查询

16)支付调用“[size=13.3333px]账户信息发生变化,为了您的充值安全,请重新登录游戏(06)
1、当前登录的状态已经丢失了,请登录后再进行支付,登录状态丢失的问题可能:
1)调用注销后没有重新走登录接口
2)连续重复调用多次登录,导致登录状态丢失

5、注销(logout)
1)logout接口在哪里调用
游戏内有”注销“或”切换账号“功能时调用logout注销接口,如果没有则不需要接用此接口

2)调用logout接口后,再调login没有弹出登录界面
调用logout注销接口后,不能直接调login登录接口,需要游戏先监听ON_LOGOUT_SUCC事件收到SUCCESS后再调login接口,否则登录界面无法显示

6、退出SDK(exit退出接口)
1)SDK退出接口在哪里调用
建议放在手机返回键或游戏内的”退出游戏“按钮调用

2)游戏有退出框,能否不调此接口
不可以喔,当游戏退出前必须调用该方法,进行SDK清理工作,否则可能再次进入会出现未知错误,建议游戏退出框去掉,直接调用SDK退出方法

3)接口调用后,界面不显示
请检查:
1、接口是否在UI线程调用,要求放UI线程执行
2、调用退出方法时是否同时调用了其它退出方法,导致SDK退出接口未执行完,游戏就退出了或被其它执行的代码中断
3、以上两点检查正常后请看下logcat运行日志,是否有异常报错或警告日志,按日志排查原因

4)退出界面,点击“退出游戏”,游戏不退出
退出接口有两个回调,一个是ON_EXIT_CANCELED:继续游戏,一个是ON_EXIT_SUCC:退出SDK

SDK只实现退出SDK功能,需要游戏按SDK回调做相应清除资源退出游戏等处理
图片2.png
图片1.png

0

主题

0

魅力

124

经验

Rank: 1

发表于 2017-8-8 16:30:44 |显示全部楼层
我想问下,初始化失败的错误提示信息在哪
回复 推荐

举报

63

主题

0

魅力

4万

经验

发表于 2017-8-18 16:33:02 |显示全部楼层
32892927 发表于 2017-8-8 16:30
我想问下,初始化失败的错误提示信息在哪

友友,初始化失败请查看logcat运行日志
回复 推荐

举报

7

主题

0

魅力

864

经验

Rank: 4

发表于 2018-8-15 14:17:12 |显示全部楼层
现在支付测试不支持小于1元的金额了吗?
回复 推荐

举报

0

主题

0

魅力

98

经验

Rank: 1

发表于 2018-8-17 14:59:43 |显示全部楼层
我出现的问题是初始化成功了但是服务器传给了UC服务端的游戏各种信息之后 UC服务器返回了content()什么都没返回
回复 推荐

举报

0

主题

0

魅力

98

经验

Rank: 1

发表于 2018-8-17 15:00:21 |显示全部楼层
是因为游戏审核还没过吗
回复 推荐

举报

0

主题

0

魅力

98

经验

Rank: 1

发表于 2018-8-17 15:03:19 |显示全部楼层
您的企业Q多少我可以讨论问下吗
回复 推荐

举报

0

主题

0

魅力

98

经验

Rank: 1

发表于 2018-8-17 15:05:03 |显示全部楼层
这是我传给你们服务端的信息
大家一起上.png
回复 推荐

举报

返回列表 发新帖
您需要登录后才可以回帖 登录 | 立即注册

站点地图| 帮助中心| 微信客服| 九游手机游戏论坛 ( 粤ICP备13078412号-3 粤网文[2014]0209-059号 广州爱九游信息技术有限公司 )

GMT+8, 2018-9-19 11:27 , Processed in 0.135505 second(s), Total 15, Slave 14 queries , Redis On.

《九游隐私权政策》

回顶部