您当前的位置:首页>文档中心>其它问题

其它问题

网游SDK接入相关FAQ

一、联系我们

请详细阅读下面的FAQ,接入过程中常见的问题我们都给出了解答。 

如果仍有问题,可以整理问题描述及日志信息联系我们技术接口人:

QQ12785697260  QQ2504026608 我们会尽快给您答复

 

二、接入文档类

1、IOS的接入文档在哪里获取,怎么上线IOS游戏包

IOS暂时不支持接入SDK。

2、客户端使用安卓原生\unity3D\cocos2dx\flash Air引擎接入,能否提供DEMO例子给我们作参考

客户端DEMO在说玩SDK接入文档+DEMO压缩包中,目录只包括原生安卓,其它引擎暂无,需要游戏自己实现,如接入有难度,可联系技术接口人反馈问题。

3、能否提供个服务器接口通信例子作参考

服务器DEMO在说玩SDK接入文档+DEMO压缩包中(提供php语言接口版)

 

4、哪里可以查看接口说明文档

客户端接口文档在说玩SDK接入文档+DEMO压缩包中的SDK接入开发文档_x.x.x.docx。

服务端接口文档在说玩SDK接入文档+DEMO压缩包中的SDK接入开发文档(服务端)_x.x.x.docx

 

三、客户端接口

1、包名

1)包的命名有什么规范化限制吗

游戏包根目录下的AndroidManifest.xml文件——节点package="xxxxx",在包名称后加上".sw",如游戏包名为package="com.lori.app"则修改为package="com.lori.app.sw"(只针对Android版,没接入SDK的不作要求)

 

2)游戏上线前、上线后能不能修改包名

游戏未在说玩平台上线前,包名可以自由修改,规则要求加.sw后缀即可,上线后原则上不可以修改包名,因为包名修改后旧版本更新会出现两个应用,如有特殊需求,请提交包时,详细备注下修改原因

 

2、安卓版本

1)SDK支持什么版本的安卓操作系统

SDK支持安卓3.0以上的系统版本

 

2)对游戏的安卓操作系统版本有什么要求

游戏在保证运行的情况下,尽量兼容3.0.X及以上用户,5.X、6.X版本市场占额越来越大,请游戏做好兼容

 

3、角标

1)请问游戏包ICON需要加说玩角标吗

游戏包内需要加说玩角标,专区图标不需要加角标。

 

2)角标图片在哪里拿,有什么要求

图片资源:请见资料包“说玩LOGO及使用说明”—“游戏图标角标”

要求:不得遮挡图标主体内容和方字区域,放在图标的右下角,logo方向不能反

 

3)icon右下角有文字或遮挡游戏图标,影响美观,能不能改在其它位置

可以修改到其它位置,但SDK不提供其它方向的角标,如确实有需要,请游戏美工修改下,请注意logo方向不能反

 

4、闪屏/开机启动页

1)需要添加说玩闪屏/开机启动页吗,图片资源在哪里

SDK初始化接口自带了闪屏图片,不需要游戏另外添加,如果游戏自己另外还加了启动图片,需要去掉哦,不然会影响审核。

 

2)闪屏位置有没要求,可以先出公司的logo再出现吗

闪屏位置没有要求,可以在公司logo之后。

 

5、官网/外链

1)游戏包/专区里可以放官方网址、QQ群吗

不可以,要求游戏内、专区涉及到的活动不可以增加外部信息,如官方网址、官方包下载地址、微信、微博、公众号、QQ群、贴吧等等,有特殊需要,请联系运营说明

 

2)游戏内可以做微信、微博分享功能吗

可以,但要求同上,不可以带官方信息,另外包上线后平台会对包进行重签名,如果需要做分享功能,请使用上线后的包签名做申请,需要签名的MD5可以联系技术接口人获取。

6、初始化(init(context)

1)初始化接口在哪里调用

建议初始化接口放在游戏启动后直接调用。

 

2)初始化接口传递的appId/gameId在哪里获取

appId:在说玩开放平台-游戏管理-游戏列表-设置里获取。

gameId:在说玩开放平台-游戏管理-游戏列表-设置里获取。

 

4)客户端如何切换为正式/测试环境

初始化SDK时,调用setDebug()方法,则表示运行环境为测试环境,否则为正式环境。

如:ShuoWanSDK. defaultSDK().init ();

ShuoWanSDK. defaultSDK().setDebug();

 

5)初始化过程中提示“网络无响应”

请检查当前手机网络是否正常,切换网络测试看看,如果网络正常但无法初始化,请联系技术接口人处理。

 

6)初始化失败,提示“游戏信息配置错误”

请检查传递的gameId参数是否为说玩开放平台提供的游戏参数。

 

9)如何查看当前接入的SDK版本

可以用以下几种方法查看

1.检查导入的sdk Jar包,jar包名上有写明,如“ShuoWanGameSDK-1.0.1.jar,则为1.0.1版本

2.初始化启动页右下角有显示版本号

 

7、登录(login

1) 登录失败,提示“游戏信息配置错误”

请检查传递的gameId参数是否为说玩开放平台提供的游戏参数

 

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

请检查下logcat运行时报异常的日志,可能原因是以下几种:

1.日志如有类似说明权限的,请检查游戏配置的manifest 权限是否已全部添加SDK接入文档要求的。

2.日志如有类似说明线程问题,请检查登录接口是否在UI线程调用,要求放UI线程调用。

 

3)调用登录接口后,游戏闪退

请检查下logcat运行时报异常的日志,可能原因是以下几种:

1.日志如有类似说明权限的,请检查游戏配置的manifest 权限是否已全部添加SDK接入文档要求的。

2.日志如有类似说明线程问题,请检查登录接口是否在UI线程调用,要求放UI线程调用。

 

4)调试SDK,能否提供测试的账号

请直接在当前客户端“一键注册”账号测试游戏即可。

 

5)之前在论坛注册的说玩号,登录时提示“账号或密码有误”,输入的账号或密码是正常的

测试与正式环境账号不相通,如果是从联调环境注册的账号,再使用生产环境进行登录,可能会出现如上错误,重新在当前环境下进行注册账号,再使用新注册的账号进行登录即可。

 

6)使用正常的手机号验证码登录,提示“验证码错误”

请检查客户端是否为联调环境(即ShuoWanSDK.defaultSDK().setDebug();),因联调环境不支持手机号登录,故无法验证通过,如需在联调环境登录,请使用一键注册账号登录

 

7)测试使用的账号,忘记密码,能否重置下密码

联调环境的密码如丢失的话无法找回,请重新注册账号测试,如正式环境的密码丢失,可以自助找回密码或联系客服。 

 

8、悬浮图标(floatButton

1)创建的悬浮按钮无法显示

请检查:

1.要求在login接口收到SUCCESS后调用showFloatView(Activity act)

2.检查接口所在线程,接口要求放在UI线程调用。

 

3)横屏游戏,悬浮图标调用后,点击“账户”、“论坛”界面切换为竖屏,返回游戏后出现黑屏或闪退

建议将manfiest内所有activity加上“screenSize属性,android:configChanges="keyboardHidden|orientation|screenSize"

避免切屏后导致游戏黑屏或闪退。

 

7)游戏副本中显示悬浮图标影响用户操作,是否可隐藏

可以,调用removeFloatView()即可。

 

8)悬浮图标隐藏后怎么才能重新显示

隐藏后,调用showFloatView(Activity act)即可使用悬浮图标重新显示。

 

9、充值(pay)

1)充值界面,点击支付时,提示下单失败

1.检查回调地址是否已配置。

2.如客户端配置了回调地址,请注意回调地址格式必须以“ http://”开头,不能用空格或null值,如使用后台配置地址,请传“”或注释掉setNotifyUrl参数。

 

2)后台配置回调地址有区分测试环境,正式环境,需要配置不同的吗

SDK会根据客户端下单时当前使用的环境去拿对应环境的回调地址,两个环境可以使用相同的回调地址或不同的均可正常接收回调。

 

3)SDK支付界面横屏但跳转支付宝、银行卡为竖屏,怎么修改

支付宝、银行卡强制竖屏,无法修改,如果横屏游戏切屏后导致游戏异常退出或黑屏等其它现象,请游戏修改manifest文件将所有的activity都加上screenSize属性,如下:

android:configChanges="keyboardHidden|orientation|screenSize"

 

4)SDK支付界面点击“支付”按钮,未充值成功就收到SUCCESS回调

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

 

8) 客户端是否能获取充值成功的回调

客户端仅能获取充值操作成功的回调,具体充值是否成功需等待游戏服务器的通知。充值完成后,SDK服务器会回调充值结果至游戏配置好的回调地址上,游戏通过服务器收到的回调信息判断是否充值成功,orderStatus为S成功,F失败,游戏判断订单为S再处理下发游戏币,F不予下发。

 

9) 如何测试充值,是否能提供测试号

不提供测试账号(银联支付除外,银联支付测试帐号请查看SDK接入开发文档),游戏自行在登录界面注册账号,联调环境测试充值,可以提供说玩账号给技术接口人增加平台币用于测试充值,充值卡测试使用虚拟的卡号密码,符合位数即可充值(如卡号10位,密码8位),支付宝、银行卡等需要真实付款,可忽略不测,正式环境测试充值需要使用真钱,游戏可以调低支付金额,SDK支付最小单位0.01元。

 

10)平台币如何获取

平台币可以通过使用说玩手游宝(android应用)或说玩助手(PC应用)获取,测试帐号可以找技术接口人增加测试用平台币。

 

11) 如何使用定额支付,或不定额支付

showPay方法可传递money值,开发者可自行传入输入框中数值。

 

12)客户端有没有查询充值订单接口

不提供,充值成功后SDK服务端主动回调订单给游戏服务器。

 

13)充值界面按home键,返回游戏,支付界面消失

AndroidManfest配置了android:launchMode="singleTask"的activity配置,均修改为android:launchMode="standard"即可。

 

14)充值后在哪里查询充值结果

联调环境充值的订单,可以通过“开放平台-游戏管理-点击游戏名-SDK接入-游戏接入调试工具-充值”查询订单充值结果。

正式环境的订单,可以通过“开放平台-合同与财务-支付详情”,输入账号或订单号查询。

 

10、退出SDK(exitSDK)

1)SDK退出接口在哪里调用

建议放在手机返回键或游戏内的“退出游戏”按钮调用。

 

2)游戏有退出框,能否不调此接口

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

 

3)接口调用后,界面不显示

请检查:

1.接口是否在UI线程调用,要求放UI线程执行

2.调用退出方法时是否同时调用了其它退出方法,导致SDK退出接口未执行完,游戏就退出了或被其它执行的代码中断。

3.以上两点检查正常后请看下logcat运行日志,是否有异常报错或警告日志,按日志排查原因。

 

4)退出界面,点击“退出游戏,游戏不退出

退出接口有两个回调,一个是SDK_EXIT_CONTINUE:继续游戏,一个是SDK_EXIT:退出游戏,SDK实现退出游戏功能,需要游戏按SDK回调做相应处理。

 

四、服务端接口

1、充值回调接口

1)充值成功后,服务器收不到回调信息

收不到回调地址,联调环境请查看联调工具订单回调日志,正式环境请在开放平台-合同与财务-订单查询详情处检查订单回调信息,可能原因有以下几点: 

1.订单传递的回调地址不正常,如后台配置正确,请检查是否在客户端传递了其它回调地址。

2.通知返回异常信息,如500、未知的主机地址或time out之类的,请检查当前配置的回调地址访问是否正常,如无法判断,建议使用SDK请求的回调信息在本地模拟请求post到回调地址上,看看接收是否正常。

 

2)接收到充值回调的信息内容为空

回调异步信息是将参数连接成串,通过post给游戏的回调结果地址,这样的形式来进行通知。 

 

3)服务端接收到订单验证签名失败

请检查以下几点:

1.sign生成是否根据《SDK接入开发文档》中的“签名说明”来拼接,并使用用MD5算法转换,注意小写。

2.检查游戏客户端与服务器请求串中使用的gameId\appkey参数是否正常。

 

4)客户端下单时传的金额与服务器接收到的回调信息内amount值不一致,应以哪个为准,如何处理金额不符的订单

以服务端接收的回调信息内金额为准,客户端下单时传递的金额可能被玩家使用第三方修改器或其它方式修改了充值金额,不能以此为准,如出现订单金额不符合时,建议按服务器接收到的回调信息内的金额下发游戏币,或不处理订单,如用户投诉再单独处理。

 

5)服务器收到订单后怎么判断是充值成功

游戏需根据sign验证签名及orderid,如果正确,则表示充值成功

 

6)同一笔订单SDK服务器多次回调

游戏服务器收到的订单,不管orderid是否正确,只要验证签名SIGN匹配正确,都必须返回SUCCESS给说玩SDK服务器,表示已经接收到说玩SDK服务器通知,不需继续通知,否则说玩SDK服务器将把未按规定返回内容的订单进行重发,故会产生同一笔订单回调多次。

 

7)订单接收失败或收到后判断为异常订单,应如何返回

接收异常或订单收到后处理失败,建议返回FAILURE,这样我们才能及时发现有异常订单,从而做相应的处理。

 

8)如何自测返回的响应是否正确

联调环境,请使用调联工具,查看订单回调响应,只返回SUCCESS即正确。

正式环境,请在开放平台-合同与财务-订单查询,输入测试的说玩帐号或订单号,点击查询订单,通知状态为成功,即正确。

 

五、版本更新

1)SDK会修改二次签名吗,增量强更如何获取签名后的游戏包

游戏包上线时,说玩开放平台会针对游戏重签名,游戏自行配置强更时请将游戏包提交后台,由QA审核通过后,用系统重签名包的下载地址给游戏配置强更(地址可找技术接口人获取,或游戏上线前一天在开放平台获取)

 

2)使用SDK强更,游戏需要注意什么

请注意以下几点:

1.新版本的游戏包version code或version name不允许低于上版本,且其中一个参必须大于上一版本,包名必须与上版本保持一致。

2.上版本的游戏包如果有检测更新之类的功能,要求在sdk 初始化后执行,否则SDK更新配置后无法看到更新入口。

3.支持旧版本覆盖安装新版本,因覆盖安装后本地缓存数据仍在,要保证新版本运行正常

六、报错异常分析

1)运行时报“java.lang.NoClassDefFoundError”

错误截图如下:

解决方法:

1.打开项目的Properties,找到Java Build Path中的Order and Export;

       2.勾选Android Private Libraries,如下图;

       clip_image002.png

       3.最后clean项目,即可解决问题。

 

2)初始化SDK时报“Fatal signol 11(SIGSEGV) at 0x00000000”

错误截图如下:

clip_image003.jpg

       解决方法:

       请确保您是在主线程中调用SDK初始方法的。Cocos2dx的线程可能比较特殊,请开发者注意。

3)微信支付时,应用显示“支付失败……”

  解决方法:

       1.请检查手机的系统时间是否正确。

 

4)进入悬浮球内容界面或支付界面,应用闪退或重启,Log中有InputDispatcher错误 blob.png

       解决方法:

  1.检查activity标签是否有如下设置,包括主activity和SDK的activity

android:configChanges="keyboardHidden|orientation|screenSize"


5)注册或登录时,提示“很抱歉,程序异常”,如下图

blob.png

解决方法:

1.检查项目配置文件AndroidManifest.xml中,<application>标签中是否有加入android:label,如下:(注意,必须使用@string/xxx这种形式)

<application

        android:allowBackup="true"

        android:configChanges="keyboardHidden|orientation|screenSize"

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name" >


帮助-网游SDK接入相关FAQ.docx

问题反馈

这些文档都没有解决你的问题? 来官方交流群讨论(290785392)说玩模拟器用户交流群