flutter 支付宝支付

(一)下载地址:

pub地址:flutter_alipay

选下图中的第一个就好了。
flutter 支付宝支付_第1张图片

(二)pubspec.yaml文件中集成:

  flutter_alipay: ^0.1.0

(三)使用步骤:

首先说明一下,支付宝的支付跟微信支付客户端支付区别还是有一些的, 支付宝的支付把很多重要的数据都是放在服务器后端的,所以这里客户端支付宝支付的代码就相对较少,以下是代码部分

  • 点击支付按钮(生成订单):
      DataUtils.payByAli(params).then((value) {
        if (value != null) {
          print('   ALiVVVVVV $value');

          var jsData = json.decode(value);
          int status = jsData['status'];
          String msg = jsData['msg'];
          if (status == Constant.SUCCESS_CODE) {
            AliPaySignBean aliPaySignBean =
            AliPaySignBean.fromJson(jsonDecode(value));
            AliPaySignInfo signInfo = aliPaySignBean.data.info;
            String sign = signInfo.sign;
            // 使用sign调起支付宝
            aliPay(sign);
          } else {
            Util.showToast(msg);
          }
        }
      }).catchError((e) {
        print(' ## $e');
      });
  • aliPay()这个接口调起支付宝支付,代码如下:
  void aliPay(String sign) async {
    if (sign == null || sign.length == 0) {
      return;
    }
    FlutterAlipay.pay(sign).then((payResult){
      _payResult = payResult;
      print('>>>>>  ${_payResult.toString()}');

      String payResultStatus = _payResult.resultStatus;
      if (payResultStatus == Constant.ALIPAY_SUCCESS) {
        payState = true;
        Util.showToast('支付成功');
      } else if (payResultStatus == Constant.ALIPAY_CANCLE) {
        payState = false;
        Util.showToast('支付取消');
      } else if (payResultStatus == Constant.ALIPAY_FAILE) {
        payState = false;
        Util.showToast('支付失败');
      } else if (payResultStatus == Constant.ALIPAY_WAITTING) {
        payState = false;
        Util.showToast('等待支付');
      } else if (payResultStatus == Constant.ALIPAY_NET_ERROR) {
        payState = false;
        Util.showToast('无网络');
      } else if (payResultStatus == Constant.ALIPAY_REPET) {
        payState = false;
        Util.showToast('重复支付');
      }
      jump2PayForCourseDetail();
      if (!mounted) return;
      setState(() {});
    }).catchError((e){
      _payResult = null;
      payState = false;
      Util.showToast('支付失败');
    });


  }

支付宝支付过程大概就是上面这些了,简单明了,建议先把demo运行起来,体验一把再集成进去,这样效率会快很多。

另外附上:Flutter微信支付


adTime:
更多教程请访问:

超详细图文搭建个人免费博客

「蛇崽网盘教程资源」公s众s号 ,在微sssd信2后台回复「领取资源」,获取IT资源200G干货大全。

在微阿斯顿发信后台回复「130个小程序」,即可免费领取享有导入就能跑的微信小程序

在微发电房信后台回复「Flutter移动电商」,即可免费领取Flutter移动电商系列全套
在这里插入图片描述

你可能感兴趣的:(Flutter开发)