写点什么

应用宝 SDK 接入记录

用户头像
风翱
关注
发布于: 2021 年 04 月 12 日

在接入应用宝时的一些总结记录:


应用宝 SDK 接入分 QQ 登陆和微信登陆,充值方式有:游戏币模式、道具直购模式、道具寄售模式。


​普通网游一般接入游戏币模式。此模式,无法自定义传入名称,在多货币的情况下,审核出现问题。由于游戏(单机)的特殊性,多种货币(道具)可直接购买,所有接入这一块采用了登陆和充值分开处理。直接接入米大师,登陆申请在 open.qq.com(腾讯开放平台),支付申请在http://midas.qq.com/(米大师),即道具直购模式。


主要说明一下,服务端接收腾讯充值回调的处理。腾讯回调比较特殊,用 non-hosting 应用(即应用部署在开发者自己的服务器上),需要采用 https(443),接收回调。

接入过程如下:

1.程序启动 https 服务,此处理在拿到腾讯 CA 安全证书使用说明文档后,废弃。

2.采用说明文档中,tomcat 方式进行处理,action 做中转。


主要步骤:

a.修改 tomcat connector 运行模式为:apr,配置具体如下:

<Connector

​ protocol=“org.apache.coyote.http11.Http11AprProtocol”

​ port=“443” maxThreads=“200”

​ scheme=“https” secure=“true” SSLEnabled=“true”

​ SSLCertificateFile=“D:/apache-tomcat-6.0.37-windows-x64/apache-tomcat-6.0.37/crt/server.crt”

​ SSLCertificateKeyFile=“D:/apache-tomcat-6.0.37-windows-x64/apache-tomcat-6.0.37/crt/server.key”

​ SSLVerifyClient=“none”

​ SSLCACertificateFile="D:/apache-tomcat-6.0.37-windows-x64/apache-tomcat-6.0.37/crt/ca.crt" />


b.回调接入处理,详细说明,如:

http://wiki.open.qq.com/wiki/回调发货 URL 的协议说明_V3


​ 说是详细说明,其实很坑爹,有些参数是没有的。只有文档中两句标红的话:


​ 请开发者特别关注:

平台后续可能对协议进行扩展,产生随机参数,因此请不要将参与签名的参数写死。

计算签名时,请以每笔交易接收到的参数为准,接收到的所有参数除 sig 和 cee_extend 以外都要参与签名。


​ 所以,腾讯的接入,每一句话,都需要小心处理。


​ 后面根据其说明,采用动态解析方式,关键代码如下:

String requestQuery = request.getQueryString();​ 

Map map = request.getParameterMap();​ 

HashMap<String, String> requestMap = new HashMap<String, String>();​

for (Object key : map.keySet()) 

{​ 

requestMap​ .put(key.toString(), request.getParameter(key.toString()));​

}​


c.部署到正式服.


1.需要安装:APR.


2.遇到的问题,443 访问不了,后面才知道原来是自己登陆错账号,开启错了。所以以后出现问题,先排除自己的问题。特别是让其他人处理时,出现问题,更应该先检查自己的问题。


此处理还有一个问题未处理的:因为服务器是两台做容灾,采用 tomcat 开放 443 的方式,只能是一台有效,可修改为 Nginx 方式。


另一个是商务方面的,应用宝审核,第一次先审包,第二次先审资质。所以商务先把申请审核方面的文档先看仔细,当然也可以安排其他人进行查看更新,避免卡在这方面上。

发布于: 2021 年 04 月 12 日阅读数: 88
用户头像

风翱

关注

还未添加个人签名 2017.11.24 加入

勇于尝试,持续成长

评论

发布
暂无评论
应用宝SDK接入记录