iOS - 链接一个部署目标比我的项目更高的框架

Posted

技术标签:

【中文标题】iOS - 链接一个部署目标比我的项目更高的框架【英文标题】:iOS - Link a framework with higher deployment target than my project's 【发布时间】:2019-04-20 08:19:12 【问题描述】:

我有一个已链接到我的项目的框架。该应用程序构建良好。但是当我尝试导入要在我的类中使用的框架时,会显示一个错误,表明框架部署目标高于我的应用程序的部署目标。我是否必须更改我的应用程序的部署目标以匹配框架的部署目标?或者是否有一种解决方法可以让我在继续支持旧 ios 版本的同时仍然能够使用该框架?

【问题讨论】:

看看Frameworks and Weak Linking 【参考方案1】:

考虑一下。该框架可能正在使用 iOS 后续部署中可用的功能、库,而这些功能不在您正在使用的 iOS 部署中。所以是的,如果你想使用这个框架,你必须改变你的应用程序的部署目标。

虽然您可以有条件地导入基于 iOS 版本Conditionally import a framework (such as Speech) based on iOS Version in Swift? 的框架,但当然您需要针对该框架不适用的 iOS 版本的解决方案。

【讨论】:

有有效的用例。例如,我的应用当前的部署目标设置为 iOS 11。对于 iOS 13 用户,我正在使用 SwiftUI 创建新视图。在我的 SwiftUI 代码中(仅限 iOS 13)。没有让条件导入起作用,但也许有可能。

以上是关于iOS - 链接一个部署目标比我的项目更高的框架的主要内容,如果未能解决你的问题,请参考以下文章

Pod install 显示错误,例如需要更高的最小部署目标

Firebase pod install - pod 'Firebase/Database' - 需要更高的最低部署目标

框架的部署目标无效

满足 'firebase_admob' 的规范,但它们需要 Flutter 中更高的最小部署目标

唯一性约束功能需要 ios 部署目标 9.0 或更高版本 - Core Data

iphone 应用最低要求 iOS