You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter iOS端无法配置Razorpay支付网关,编译报错求助

Flutter iOS端Razorpay插件构建失败解决方案

核心报错分析

从日志看,导致构建失败的关键错误是:

Swift Compiler Error (Xcode): Module 'Razorpay' was created for incompatible target arm64-apple-ios10.0: /Users/devytpl/Dev/Applications/ios/Pods/razorpay-pod/Pod/Razorpay.framework/Modules/Razorpay.swiftmodule/arm64.swiftmodule

这说明Razorpay的iOS SDK架构与模拟器不兼容,同时还存在部署目标版本过低、Bitcode不支持等次要问题。


分步解决方案

1. 修复架构不兼容问题

在iOS项目的Podfile中添加架构过滤配置,确保模拟器使用正确的架构编译:

  1. 打开项目根目录下的ios/Podfile,在文件末尾添加以下代码:
post_install do |installer|
  installer.pods_project.targets.each do |target|
    # 为razorpay-pod过滤模拟器的arm64架构
    if target.name == 'razorpay-pod'
      target.build_configurations.each do |config|
        config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
      end
    end
    # 统一将所有Pod的部署目标设置为9.0,解决版本警告
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
    end
  end
end
  1. 执行以下命令清理并重新构建依赖:
cd ios
pod deintegrate
pod install
cd ..
flutter clean
flutter run

2. 禁用Bitcode消除警告

Flutter官方引擎不支持Bitcode,直接在Xcode中关闭该选项:

  • 打开ios/Runner.xcworkspace
  • 选中Runner目标,进入Build Settings标签页
  • 搜索ENABLE_BITCODE,将其值设置为NO

3. 升级Razorpay Flutter插件(推荐)

你当前使用的razorpay_flutter:1.3.2版本较旧,新版本已修复大量iOS兼容性问题:

  • 在pubspec.yaml中更新依赖版本:
razorpay_flutter: ^2.1.4 # 可前往pub.dev获取最新稳定版
  • 执行flutter pub get后,重新执行上述的pod清理安装步骤。

4. M系列Mac额外适配

如果使用M1/M2芯片的Mac,需在Xcode中调整架构设置:

  • 打开ios/Runner.xcworkspace,选中Runner目标
  • 进入Build Settings,搜索Architectures,设置为Standard Architectures (arm64, x86_64)
  • 搜索VALID_ARCHS,添加arm64和x86_64两个架构值

内容的提问来源于stack exchange,提问作者Mrutyunjaya Giri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 13:48:21