Android接入微信支付步骤

项目中要接入微信支付,按往常我们集成第三方流程一样,先看开发文档。

1、首先确定微信开放平台中,应用签名是你项目生成.jks的签名,包名必须和项目包名一致。

Android接入微信支付步骤_第1张图片

注意:签名是MD5串,必须小写。建议用代码输输出下,防止出错。

Android接入微信支付步骤_第2张图片


2、然后引jar到项目中,在支付之前按如下文档所说,注册AppId。

Android接入微信支付步骤_第3张图片

注意:IWXAPI 应该声明为全局的,不要final修饰,下面发起支付要用到。

我是这样注册的:

Android接入微信支付步骤_第4张图片

3、然后拿到服务器返回给你的参数,按如下方法调起支付。

Android接入微信支付步骤_第5张图片

注意:IWAPI 没必要再声明一次,而且文档的参数有误,直接用上面声明的全局api 发起支付。

4、拿到回调,判断支付状态。

Android接入微信支付步骤_第6张图片

注意:必须在包名为com.xxx.xxx.wxapi 的 WXPayEntryActivity类中拿到这个回调,包名和类型必须如此命名:

必须实现IWXAPIEventHandler 这个接口(可参考Demo):

还有,需要在Manifest里 为WXPayEntryActivity 类配置如下属性:

Android接入微信支付步骤_第7张图片

5、根据回调中resp.errCode 的值判断是否支付成功。

Android接入微信支付步骤_第8张图片

返回 -1 的情况:

   开放平台注册的应用签名和项目生成的不一样;

   AppId未注册,包名不一致;

 调起支付的参数有问题,后台生成预付订单再次签名有问题。


如果签名修改过,不会立即生效的。可能一天,也可能得两三天。我当时签名也是修改过的,一下午都是返回-1,第二天早才可以正常调起微信。

如果以上操作都没问题,还是返回 -1,那就是写后台的问题了,找他去~




   

你可能感兴趣的:(Android接入微信支付步骤)