android微信支付多个商户,Android微信支付的两大坑点

并不是所有的BAT的API都是那么好用,微信支付就有不少的坑点,总结一下微信支付实现中出现的坑点

坑点一:

PayReq的参数 sign的生成

PayReq对象有个参数为packageValue

而sign生成时要用到packageValue,但是对应的Key是package,这里的key容易弄错

List signParams =newLinkedList();

signParams.add(newBasicNameValuePair("appid", req.appId));

signParams.add(newBasicNameValuePair("noncestr", req.nonceStr));

signParams.add(newBasicNameValuePair("package", req.packageValue));

signParams.add(newBasicNameValuePair("partnerid", req.partnerId));

signParams.add(newBasicNameValuePair("prepayid", req.prepayId));

signParams.add(newBasicNameValuePair("timestamp", req.timeStamp));

坑点二:

支付回调方法

微信使用反射找到对应的类并实现的回调

微信官方给出的说明如下:

参照微信SDK Sample,在net.sourceforge.simcpux.wxapi包路径中实现WXPayEntryActivity类(包名或类名不一致会造成无法回调),在WXPayEntryActivity类中实现onResp函数,支付完成后,微信APP会返回到商户APP并回调onResp函数,开发者需要在该函数中接收通知,判断返回错误码,如果支付成功则去后台查询支付结果再展示用户实际支付结果。

意思如下:

1、你要在创建个packageName+.wxapi的包,如:你的项目报名:com.android.qq,那你要在该包名下创建个wxapi的包

2、在该包下创建个名为 WXPayEntryActivity的Activity类,并实现 接口 IWXAPIEventHandler ,支付的回调就在该接口的 onResp(BaseResp resp)方法中进行

package com.android.qq.wxapi;

public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler {

@Override

publicvoidonResp(BaseResp resp) {

//处理支付回调

}

三:签名测试

这个算不上坑点洛,很多第三方都要这样才可测试

支付的测试必须对应签名的包,否则无法测试支付功能

【责任编辑:chenqingxiang TEL:(010)68476606】

点赞 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值