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

集成Razorpay后iOS构建报错:Error running pod install

Flutter集成Razorpay后iOS端pod install报错:undefined method `map' for nil:NilClass

问题详情

集成Razorpay支付插件并完成info.plist配置后,iOS端无法启动应用,执行pod install时抛出以下错误:

Error output from CocoaPods:
↳
    Searching for inspections failed: undefined method `map' for nil:NilClass
Error running pod install
Error launching application on iPhone 13 Pro.

已尝试flutter clean操作,问题未解决。新增的Razorpay相关业务代码如下:

Razorpay razorpay = Razorpay();
    
@override
void initState() {
  razorpay.on(Razorpay.EVENT_PAYMENT_SUCCESS, _handlePaymentSuccess);
  razorpay.on(Razorpay.EVENT_PAYMENT_ERROR, _handlePaymentError);
  razorpay.on(Razorpay.EVENT_EXTERNAL_WALLET, _handleExternalWallet);

  super.initState();
}

void _handlePaymentSuccess(PaymentSuccessResponse response) {
  Navigator.push(
      context,
      MaterialPageRoute(
          builder: (context) =>
              OrderResultScreen(result: 'Order Sucessfull')));
}

void _handlePaymentError(PaymentFailureResponse response) {
  Navigator.push(
      context,
      MaterialPageRoute(
          builder: (context) =>
              OrderResultScreen(result: 'Payment Failed. Please try again')));
}

void _handleExternalWallet(ExternalWalletResponse response) {
  Navigator.push(
      context,
      MaterialPageRoute(
          builder: (context) => OrderResultScreen(result: 'Order....')));
}

@override
void dispose() {
  razorpay.clear();
  super.dispose();
}

Map orderDetails = {
  "id": "rzp_test_86Qc8y8X0jtLa0",
  "entity": "order",
  "amount": 50000,
  "amount_paid": 0,
  "amount_due": 50000,
  "currency": "INR",
  "receipt": "rcptid_11",
  "status": "created",
  "attempts": 0,
  "notes": [],
  "created_at": 1566986570
};

解决步骤

1. 升级CocoaPods版本

该报错多由CocoaPods版本兼容性问题导致,先升级到最新稳定版:

# 通过RubyGems升级
sudo gem install cocoapods

# 或通过Homebrew升级(若使用Homebrew管理)
brew upgrade cocoapods

2. 彻底清理iOS端依赖并重装

进入项目iOS目录,执行以下命令清理缓存并重新安装Pods:

cd ios
pod deintegrate
pod clean
rm Podfile.lock
pod install

回到项目根目录后重新运行应用:

flutter run

3. 确认Razorpay插件版本兼容

检查pubspec.yaml中razorpay_flutter的版本,确保使用最新稳定版:

dependencies:
  razorpay_flutter: ^1.3.5 # 替换为当前最新兼容版本

执行flutter pub get拉取最新依赖后,重复步骤2的Pods重装操作。

4. 验证info.plist配置正确性

确认info.plist中已添加Razorpay所需配置,且无格式错误:

  • 在LSApplicationQueriesSchemes数组中添加razorpay
  • 检查配置项的括号、逗号是否匹配,无语法错误

5. 检查Xcode项目部署配置

打开ios/Runner.xcworkspace,确认:

  • 项目Deployment Target不低于iOS 10.0(Razorpay最低要求)
  • Pods项目的Deployment Target与主项目保持一致

内容的提问来源于stack exchange,提问作者Rahul Dua

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 17:54:33