我们的项目是Objective-c项目。
由于我们使用的是react-native-firebase
,所以我们不再将can't use use_frameworks!
用在椰壳中。
问题是我们有一个swift pod依赖项(PromiseKit),据我所知,要使用swift依赖项,必须使用use_frameworks!
。
我想做的是兼顾两全其美:
use_frameworks!
,以便react-native-firebase
和PromiseKit
快速依赖关系。当前Podfile:
platform :ios, '10.0'
target 'TestApp' do
use_frameworks!
# swift pod
pod 'PromiseKit'
# react-native-firebase
pod 'Firebase/Core', '~> 5.3.0'
pod 'Firebase/DynamicLinks', '~> 5.3.0'
pod 'Firebase/Messaging', '~> 5.3.0'
end
[我注意到有此命令:modular_headers => true
或use_modular_headers
,由于Cocoapods 1.5,我感觉到它可能与我正在寻找的解决方案无关,但似乎无法连接所有点。
如果删除use_frameworks!
(即使我将其替换为use_modular_headers!
,也会收到此错误:
用Podfile中的use_frameworks!
替换use_modular_headers!
。
从引用的CocoaPods 1.5 release note:
使用CocoaPods 1.5.0,开发人员不再受限于指定use_frameworks!在他们的Podfile中以安装Pod使用Swift。与Objective-C互操作应该可以正常工作。但是,如果您的Swift Pod取决于您需要启用的Objective-C Pod该Objective-C广告连播的“模块化标头”(请参见下文)。
使用CocoaPods 1.9.0,现在可以静态和动态地构建框架。使用use_frameworks! :linkage => :static
我上周遇到了类似的问题,所以我创建了一个基本项目,在这里我使用Swift,Firebase,但是not use_frameworks!
,而不是使用桥接头。
不知道人们是否仍然对此有疑问,请告诉我是否有帮助。 https://github.com/jenshandersson/React-Native-Swift