应用接入微信支付——移动支付

来源:互联网 发布:海报自动设计软件 编辑:程序博客网 时间:2024/06/05 20:22

点击链接:(官方文档)   微信支付集成流程


商户系统和微信支付系统主要交互说明:

步骤1:用户在商户APP中选择商品,提交订单,选择微信支付。

步骤2:商户后台收到用户支付单,调用微信支付统一下单接口。参见【统一下单API】。

步骤3:统一下单接口返回正常的prepay_id,再按签名规范重新生成签名后,将数据传输给APP。参与签名的字段名为appId,partnerId,prepayId,nonceStr,timeStamp,package。注意:package的值格式为Sign=WXPay

步骤4:商户APP调起微信支付。api参见本章节【app端开发步骤说明】

步骤5:商户后台接收支付通知。api参见【支付结果通知API】

步骤6:商户后台查询支付结果。,api参见【查询订单API】



1) 申请获取AppID:wx
2) 下载微信终端开发工具包  就是把libammsdk.jar 导入到项目里面
3) 搭建开发环境   AndroidManifest.xml 清单文件配置:权限和注册 
<activity
                android:name=".wxapi.WXPayEntryActivity"
            android:exported="true"
            android:launchMode="singleTop"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
        </activity>

4)  在PayForActivity的onCreate()方法中:
    //第一步 
        api = WXAPIFactory.createWXAPI(this, null);
        api.registerApp("w942b548");


    //第二步 
    支付前,调用本地后台的预支付接口,获取相应的数据  比如
        request.partnerId = "1900109";
        //后台返回  预支付接口
        request.prepayId = "110100000140415649af9fc314aa427";
        request.nonceStr = "110100000140429eb40476f8896f4c9";
        request.timeStamp = "138746574";
request.sign = "7FFECB60D7157C5AA49810D2D8F28BC2811827B";

//第三步 点击支付按钮,进行支付
   private void payFor() {
        //  IWXAPI api;  //这行代码就没有用了  对不对?
        //创建对付对象
        PayReq request = new PayReq();
        //已经知道
        request.appId = "wxd930ea5da258f4f";
        request.partnerId = "1900000109";
        //后台返回  预支付接口
        request.prepayId = info.prepayId;
        request.nonceStr = info.nonceStr;
        request.timeStamp = info.timeStamp;
        //写死
        request.packageValue = "Sign=WXPay";
        //动态生成  这是签名文件   秘钥
        request.sign = info.getSign();
        //为了保险起见  api再次检测注册


        //发起支付
        api.sendReq(request);
    }


0 0
原创粉丝点击