如何将 FirebaseFirestoreSwift 添加到工作区 || FirebaseFirestoreSwift 与 React Native 不兼容吗?

问题描述 投票:0回答:3

我想在我的应用程序中使用 Firestore,但如果我将“FirebaseFirestoreSwift”添加到我的 podfile 中,则会收到 pod 安装/更新错误:

[!] 以下 Swift pod 尚无法集成为静态库:Swift pod

FirebaseFirestoreSwift
依赖于
FirebaseFirestore
,不定义模块。选择加入那些 生成模块映射的目标(这是从以下位置导入它们所必需的) Swift 当构建为静态库时),你可以设置
use_modular_headers!
在 Podfile 中全局设置,或者指定
:modular_headers => true
对于特定的依赖项。

所以我尝试了这个:

pod 'Firebase/Firestore'
pod 'FirebaseFirestoreSwift', :modular_headers => true

但是遇到了同样的错误,所以尝试了这个:

pod 'Firebase/Firestore', :modular_headers => true
pod 'FirebaseFirestoreSwift'

但仍然遇到同样的错误,所以尝试了这个:

  use_modular_headers!
  pod 'Firebase/Firestore'
  pod 'FirebaseFirestoreSwift'

现在安装 Pod 时没有错误,但在构建时出现了以前不存在的新链接错误:

模块映射文件 '/Users/..../ios/Pods/Headers/Private/openssl_grpc/BoringSSL-GRPC.modulemap' 没有找到

该应用程序是一个 React Native 应用程序,必须添加 openssl_grpc 作为其中的一部分。

所以我的问题是,如果这样做会扰乱 React Native,如何将 FirebaseFirestoreSwift 添加到应用程序?

swift firebase react-native google-cloud-firestore cocoapods
3个回答
2
投票

尝试

use_frameworks!
use_frameworks! :linkage => :static

更多背景请访问 https://blog.cocoapods.org/CocoaPods-1.9.0-beta/

2024 年 5 月更新: 不再需要安装 import FirebaseFirestoreSwift。它的功能现已包含在 FirebaseFirestore 中。


0
投票

我有同样的问题并添加了

use_frameworks!
,就像保罗已经发布的一样......这对我有用。

我的 podfile 现在看起来像这样。

target 'HiProject' do
use_frameworks!

pod 'Firebase' 
pod 'Alamofire'
pod 'SwiftyJSON'
pod 'EAIntroView'
pod 'lottie-ios'
pod 'Firebase/Firestore'
pod 'Firebase/Auth'
pod 'FirebaseFirestoreSwift'

end

0
投票

截至 2022 年 10 月,Xcode 14.0.1、RNFirebase 16.2.0 和 RN 0.66.4 对我有用:

target 'MyApp' do
  # ...

  # Add these two lines
  pod 'GoogleUtilities', :modular_headers => true
  pod 'FirebaseCore', :modular_headers => true

  # ...
end
© www.soinside.com 2019 - 2024. All rights reserved.