您的位置:首页 > 移动开发 > 微信开发

Android开发中的第三方支付SDK的接入与使用(支付宝+微信支付+银联)

2016-10-22 18:52 846 查看

支付宝微信银行卡支付SDK接入

支付宝支付:

一.  绑定前提:

我们自己要和支付宝签约(商户签约).-->运营完成

秘钥配置-->协助运营完成秘钥的配置(公钥互换),可能程序员会参与

集成支付宝-->必须是程序员去做
二.  绑定步骤
集成调用支付宝接口进行支付的步骤:
1.  将商户ID,收款帐号,外部订单号,商品名称,商品介绍,价格,通知地址封装成订单信息

2.  对订单信息进行签名

3.  将订单信息,签名,签名方式封装成请求参数

4.  调用pay方法。

三.支付完成.返回交易结果:

1.        支付结果作为接口返回的字符串返回。返回的参数包含在result字符串中,具体再进行解析。

2.  支付宝服务器通知。商户需要提供一个http协议的接口,包含在参数里传递给安全支付,即notify_url。支付宝服务器在支付完成后,会用POST方法调用notufy_url,以xml为数据格式传输支付结果。

具体参考支付宝开发文档或者链接如下:
http://blog.163.com/benben_long/blog/static/19945824320142279427395/
注意:
1.    添加android.permission.INTERNET权限和android.permission.ACCESS_NETWORK_STATE权限
 

二.微信支付

与支付宝类似,运营人员注册获取支付功能,得到平台给的APPID、APPsercet、以及商户平台上设置的APP_key

绑定支付步骤

1.注册registerApp

2.获取token 

3.获取prepayid

4.调用sendReq

二.   服务端签名,安卓客户端具体操作如下:

1.把Constants.java,MD5.java,PayActivity.jav,util.java拷贝到项目下,复制wxapi/WXPayEntryActivity.java到项目下;

2.修改微信开放平台中后台的包名和签名,可以用腾讯开放平台的签名工具获取签名Gen_Signature_Android.apk

(1)AndroidManifest.xml中package名字和项目包名一样;

(2)AndroidManifest.xml中添加.wxapi.WXPayEntryActivity(不添加,支付成功后无法跳转到相应的通知Activity界面);

3.具体调用参照微信支付开发文档:

       

4.接收支付结果的WXPayEntryActivity中的onResp函数里处理支付结果:

   

 

微信支付遇到的问题:

微信遇到的具体问题:

1.在demo中找不到APP_KEY,邮箱发过来的没有此参数,对应文档找到是PaySignKey;

2.测试返回的支付结果是-1,可能产生此问题的地方:包名不一致;应用签名和后台不一致。

3.如果是客户端demo测试,记得注意价格单位是分(调用失败),body是中文的时候需要字符转换(返回错误ERR_JSON)。

客户端demo测试返回支付结果-1,记得删除微信缓冲数据(设置-》应用程序管理器->选中微信->清除数据)

可以用demo里的debug.keystore来测试,功能修改目录:preferences->android->build->custom debugkeystore->browse。

 

三. 银行卡支付SDK

银联开发者中心连接

https://open.unionpay.com/ajweb/help/file/techFile?productId=3

 

前提:下载安卓版银联支付开发包

步骤

1.     导入银联支付依赖包

2.     在res目录下增加资源包

3.     在Manifest文件配置里配置打开的Activity

4.   获取TN号  2.

5.   请求控件界面(PayActivity)   

6.   ActivityResult处理支付结果

PS:完全具体版细节与流程请参照官方开发文档.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐