当前位置: 移动技术网 > IT编程>移动开发>Android > Android微信支付开发问题

Android微信支付开发问题

2019年07月24日  | 移动技术网IT编程  | 我要评论

喜爱免费影院,猪猪宝贝联盟,勿惹黑涩会mm

并不是所有的bat的api都是非常好用的,微信支付就有不少的缺陷,总结一下微信支付实现中出现的问题

  坑点一:

  payreq的参数 sign的生成

  payreq对象有个参数为packagevalue

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

复制代码 代码如下:

list<namevaluepair> signparams = new linkedlist<namevaluepair>();
        signparams.add(new basicnamevaluepair("appid", req.appid));
        signparams.add(new basicnamevaluepair("noncestr", req.noncestr));
        signparams.add(new basicnamevaluepair("package", req.packagevalue));
        signparams.add(new basicnamevaluepair("partnerid", req.partnerid));
        signparams.add(new basicnamevaluepair("prepayid", req.prepayid));
        signparams.add(new basicnamevaluepair("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
    public void onresp(baseresp resp) {
        //处理支付回调
        }
 }


三:签名测试

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

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

以上内容就是android微信支付开发问题,希望对大家有所帮助。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网