gpt4 book ai didi

ios - 如何删除 use_frameworks!并在 objective-c 项目中继续使用 swift pod?

转载 作者:可可西里 更新时间:2023-11-01 01:56:30 28 4
gpt4 key购买 nike

我们的项目是一个 Objective-c 项目。

由于我们使用的是 react-native-firebase,我们 can't use use_frameworks! 在 cocoapods 中。

问题是我们有一个 swift pod 依赖项 ( PromiseKit ),据我所知,要使用 swift 依赖项,我们必须使用 use_frameworks!

我想做的是两全其美,又名:

  • 删除 use_frameworks! 以便 react-native-firebase 工作并且
  • 保持 PromiseKit swift 依赖。

当前 Pod 文件:

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 => trueuse_modular_headers 我觉得它可能与我正在寻找的解决方案相关,也可能不相关,因为 Cocoapods 1.5但我似乎无法将这些点联系起来。

编辑:

如果我删除 use_frameworks!(即使我用 use_modular_headers! 替换它)我会收到此错误:

enter image description here有什么帮助吗?

最佳答案

将 Podfile 中的 use_frameworks! 替换为 use_modular_headers!

来自CocoaPods 1.5 release note引用:

With CocoaPods 1.5.0, developers are no longer restricted into specifying use_frameworks! in their Podfile in order to install pods that use Swift. Interop with Objective-C should just work. However, if your Swift pod depends on an Objective-C, pod you will need to enable "modular headers" (see below) for that Objective-C pod.

使用 CocoaPods 1.9.0,现在可以静态和动态地构建框架。使用 use_frameworks! :linkage => :static

关于ios - 如何删除 use_frameworks!并在 objective-c 项目中继续使用 swift pod?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52910973/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com