修 pomelo 和 Cocos Creator 过程遭到收载之素材

pomelo-cocos-creator-awesome

学习 pomelo 和 Cocos Creator 过程中收集之材料,棋牌开发交流 QQ
群:390562874

GitHub:
https://github.com/tumobi/pomelo-cocos-creator-awesome

近些年召开了一个因cocos
creator的棋牌游戏项目,在跨平台发布,接入微信支付的时候,遇到了这样的一个竟之问题.

教程

  • nodejs+pomelo+mysql实战经验分享
  • 简书专题:pomelo 游戏支付
  • Pomelo框架参考
  • pomelo – 寒风 –
    CSDN博客
  • 专栏:pomelo入门 –
    CSDN博客
  • 分类: Pomelo | Vitah’s
    Blog
  • remote的写法支持es6的class么
  • pomelo-admin-web
    不克使用及其解决方案
  • Pomelo
    常见问题集

现象描述:

Cocos Creator 相关

  • CocosCreator-Pomelo-plugin
    Cocos Creator客户端Pomelo插件
  • 哪当CocosCreator 最新1.5版被集成
    Pomelo
  • cocos
    creator里添加pomelo所需的js文件与运用说明

1.一模一样的劳务端业务逻辑,客户端想服务端请求预支付多少,客户端直接以服务端接收的优先支付信息,调起微信sdk的付出功能.

Cocos Creator 和 Pomelo 项目

  • 躲猫猫 – (cocos creator +
    pomelo)
  • 生圣棋牌 -(Pomelo + Cocos
    Creator)
  • 一个 TypeScript 写的 node.js
    分布式游戏/应用服务器框架(原型基于pomelo)
  • 就此 cocos2d-js 和 pomelo 开发之 MMORPG
    传奇手游《空空西游》

2.cocos调用支付接口:

if(cc.sys.os==cc.sys.OS_ANDROID) {

jsb.reflection.callStaticMethod(this.ANDROID_API,”goToWXPay”,”(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V”,partnerid,prepayId,nonceStr,packages,sign,timeStamp);

}elseif(cc.sys.os==cc.sys.OS_IOS)
{jsb.reflection.callStaticMethod(this.IOS_API,”goToWXPay:prepayid:noncestr:stamp:package:sign:”,partnerid,prepayId,nonceStr,timeStamp,packages,sign);

}

流传的参数值完全等同,结果是安卓版支付正常,ios的老是保证签名错误.

题材排查:

1.一起就6只参数,一个个之核对.

2.结尾锁定问题,时间戳传入ios的继,值竟然改变了.

那问题是怎来之吗?

自身翻了cocos的官文档:

当 OC 的实现中,如果方式的参数需要用 float、int、bool
的,请以如下类型进行换:

float,int 请使用NSNumber类型

bool 请使用 BOOL 类型

现阶段参数与返回值支持int, float, bool,
string
,其余的种类暂时无支持。

服务端获得的流年戳是一个整数,于是我于是NSNumber,但是发现微信的sdk要求的日穿

/**时间戳,防重发*/

@property(nonatomic,assign)UInt32 timeStamp;

乃便得UInt32展开强制转换,于是问题就是来了,服务端传来的一个int值,转成为NSNumber再转移成为UInt32,值就是变了,所以尽管造成了签验证总是出错的问题.

釜底抽薪方案:

为避免转换出现的题材,我选了以服务端时间戳直接换成为string类型,传入ios的接口,然后重新ios中强制转换字符串为UInt32

req.timeStamp= (UInt32)[stampintValue];

其后,问题解决.

一言九鼎字:cocos creator 微信支付 安卓支付OK iOS支付好

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图