Xcode无法构建模块错误求助:Capacitor集成FireBase失败
Capacitor集成Firebase时Xcode构建错误
我正在使用Capacitor,尝试在项目中集成Firebase时遇到以下构建错误:
Xcode构建错误截图
环境信息
- Xcode版本:v15.4
- CocoaPods版本:v1.15.2
已尝试的操作
我已经执行了以下清理和重新安装操作:
rm -rf ~/Library/Developer/Xcode/DerivedData/ rm -rf ~/Library/Caches/CocoaPods/ pod deintegrate pod update pod install
同时也清理了Xcode的构建文件夹并重新构建项目。
当前Podfile内容
require_relative '../../node_modules/@capacitor/ios/scripts/pods_helpers' platform :ios, '13.0' use_frameworks! # workaround to avoid Xcode caching of Pods that requires # Product -> Clean Build Folder after new Cordova plugins installed # Requires CocoaPods 1.6 or newer install! 'cocoapods', :disable_input_output_paths => true def capacitor_pods pod 'Capacitor', :path => '../../node_modules/@capacitor/ios' pod 'CapacitorCordova', :path => '../../node_modules/@capacitor/ios' end target 'App' do capacitor_pods # Add your Pods here pod 'Firebase/Core' pod 'Firebase/Analytics' pod 'GoogleTagManager' end post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0' # config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = "" # config.build_settings['CODE_SIGNING_REQUIRED'] = "NO" # config.build_settings['CODE_SIGNING_ALLOWED'] = "NO" end end end
不清楚问题出在哪,恳请提供帮助。
可能的解决方案
1. 锁定Firebase SDK兼容版本
Xcode 15.4对部分旧版Firebase SDK存在兼容性问题,建议在Podfile中指定明确的兼容版本:
pod 'Firebase/Core', '~> 10.22.0' pod 'Firebase/Analytics', '~> 10.22.0' pod 'GoogleTagManager', '~> 7.0.0'
修改后重新执行pod update && pod install。
2. 调整框架链接模式
Xcode 15+在动态框架处理上容易出现冲突,将Podfile中的use_frameworks!替换为:
use_frameworks! :linkage => :static
重新执行pod命令后再尝试构建。
3. 检查Xcode架构配置
打开Xcode项目,进入Build Settings:
- 找到Architectures,设置为
Standard Architectures (arm64, x86_64) - 检查Build Active Architecture Only:Debug模式设为
Yes,Release模式设为No
4. 更新Capacitor版本
确保Capacitor版本与Xcode 15.4兼容:
npm install @capacitor/core@latest @capacitor/ios@latest npx cap sync ios
同步完成后重新执行pod相关操作。
5. 验证Firebase配置文件
确认GoogleService-Info.plist已正确添加到Xcode项目,且在目标App的Build Phases -> Copy Bundle Resources中包含该文件。
内容的提问来源于stack exchange,提问作者Sam
相关产品推荐
相关产品推荐

