(一)下載地址:
pub地址:flutter_alipay
選下圖中的第一個就好了。
(二)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移動電商系列全套