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

添加RN Firebase消息推送库后iOS构建FBReactNativeSpec执行失败

解决FBReactNativeSpec PhaseScriptExecution错误(适配M1 + RN Firebase场景)

1. 修复脚本执行权限

M1芯片环境下,RN依赖脚本可能存在权限缺失,执行以下命令:

chmod +x node_modules/react-native/scripts/generate-specs.sh
cd ios && pod install --repo-update

2. 调整Xcode架构配置

  • 打开Xcode项目,选中目标工程进入Build Settings
  • 找到Architectures,设置为$(ARCHS_STANDARD)
  • 找到Excluded Architectures,仅在Debug模式下添加arm64,Release模式下保持为空

3. 彻底清理缓存

# 重置RN缓存
npx react-native start --reset-cache

# 删除Xcode派生数据
rm -rf ~/Library/Developer/Xcode/DerivedData

关闭Xcode后重新打开项目编译。

4. 核对Firebase库与RN版本兼容性

确保@react-native-firebase/messaging和@react-native-firebase/push-notification(注意库名拼写,官方为push-notification)版本与你的RN版本匹配:

  • RN 0.68+ 对应 Firebase 15.x+
  • RN 0.70+ 对应 Firebase 16.x+

锁定兼容版本后重新安装:

npm install @react-native-firebase/messaging@<对应版本> @react-native-firebase/push-notification@<对应版本>

5. 修正Xcode脚本路径

打开Xcode项目的Build Phases,找到[CP-User] Generate Specs,检查脚本中的node路径是否为M1兼容路径:

  • 可以通过nvm which node获取当前Node.js的实际路径,替换脚本中默认的node路径

6. 用Rosetta启动Xcode

右键Xcode图标→Get Info,勾选Open using Rosetta,重启Xcode后重新构建。


内容的提问来源于stack exchange,提问作者Muiez arif

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 02:15:34