gpt4 book ai didi

ios - 使用 swift 和 Flutter 集成 Stripe SDK

转载 作者:行者123 更新时间:2023-12-01 16:07:37 28 4
gpt4 key购买 nike

我正在尝试使用 flutter 将 Apple Pay 集成到 iOS 中。我正在使用方法 channel 与 swift 进行通信并完成付款过程。我已按照此 link 中的文档进行操作

但是,我相信我已经陷入了我不明白如何继续流程的最后部分。因为我使用的是 Flutter UI,所以我不需要 iOS ViewControllers。

这是我迄今为止在 AppDelegate.swift 中尝试过的代码:

func handleApplePayButtonTapped(result: FlutterResult){
let merchantIdentifier = "my.apple.merchant.id"
let paymentRequest = Stripe.paymentRequest(withMerchantIdentifier:merchantIdentifier, country:"US", currency:"USD")
paymentRequest.paymentSummaryItems = [
PKPaymentSummaryItem(label:"Fancy Hat", amount:50.00),
PKPaymentSummaryItem(label:"iHats, Inc", amount:50.00),
]

if Stripe.canSubmitPaymentRequest(paymentRequest){
//next steps ???
result(String("Can submit payment request"))
}else{
result(String("Can't submit payment request"))
}
}

我使用以下代码在 flutter UI 中调用此代码:
Future<void> _doPayment() async {
String returnMsg;
try {
final bool result = await platform.invokeMethod('checkIfDeviceSupportsApplePay');
if(result){
final String status = await platform.invokeMethod('handleApplePayButtonTapped');
print(status);
}
returnMsg = '$result';
} on PlatformException catch (e) {
returnMsg = "Failed: '${e.message}'.";
}
print(returnMsg);}

我已经有一个 Stripe 可发布 key 以及一个 Heroku 部署的后端。如果你检查了我的快速代码,你会看到我现在卡在哪里了。

据我了解流程,剩下要做的是
  • 将卡详细信息发送到后端并获取 token
  • 使用 token ,将付款详情发送到 Stripe 服务器

  • 我对 swift 语言非常陌生,代码示例将对我继续学习有很大帮助。

    谢谢你。

    最佳答案

    看起来您正在使用 native PKPaymentAuthorizationViewController 来关注 Stripe 自定义 iOS 集成。

    您应该阅读此处的集成步骤:https://stripe.com/docs/mobile/ios/custom#apple-pay

    基本上,您的下一步将是

  • 使用 paymentRequest
  • 实例化一个 PKPaymentAuthorizationViewController
  • 让自己成为它的代表
  • 出示 PKPaymentAuthorizationViewController
  • 执行相关委托(delegate)方法以取回 Apple Pay token (PKToken)
  • 将 PKToken 转换为 STPToken(一个 Stripe token )

  • 所有这些步骤以及更多内容在上面的链接中都有详细说明。

    关于ios - 使用 swift 和 Flutter 集成 Stripe SDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54540217/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com