微信、支付宝、银联支付遇到的坑 总结

本文总结了在集成微信、支付宝和银联支付时遇到的问题,包括签名错误、验签、应用签名、Intent-filter配置、错误代码-1等,并提供了详细的解决步骤和注意事项,帮助开发者顺利集成支付功能。
摘要由CSDN通过智能技术生成

出于安全考虑,验签我们都是放到后台进行验签的。对于我们移动端节省了很多的劳动力。

支付界面如下:


支付完成界面如下:


ok,接下来开始我们轻松的开发之旅:

准备:需要以公司名义,在支付宝,微信等平台上开通公司账户并且认证,如:支付过程中需要公司的帐号和商户号。

支付宝:

1、获取订单信息(根据自己公司的实际情况:可以在服务端完成,也可以在本地完成)

2、客户端拿这些订单信息向服务器后台进行请求,返回支付签名信息signInfo

3、app携带支付信息,调用支付接口请求支付宝客户端,从而调起支付界面

/**
         * 支付宝进行请求
         *
         * @param signInfo
         */
        private void payToOrderService(final String signInfo) {
            new Thread() {
                @Override
                public void run() {
                    super.run();
                    PayTask payTask = new PayTask(MyScannerPayActivity.this);
                    // String result = payTask.pay(signInfo, true);
                    Map<String, String> result = payTask.payV2(signInfo, true);
                    Message message = mHandler.obtainMessage();
                    message.what = SDK_PAY_FLAG;
                    message.obj = result;
                    mHandler.sendMessage(message);

                }
            }.start();
        }
4、 用户操作,输入密码支付,支付成功;直接返回取消支付;出现错误,支付失败;进入支付界面,但输入密码支付,支付待确认;

5、支付宝客户端将支付结果告诉app客户端,商户服务器通知app服务器支付结果;

6、app客户端处理支付结果;

7、app服务器处理支付结果。

app客户端结果处理代码:

private Handler mHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            switch (msg.what)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值