针对 iOS 15.0 进行编译,但模块“WhisperKit”的最低部署目标是 iOS 16.0

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

错误信息:

Compiling for iOS 15.0, but module 'WhisperKit' has a minimum deployment target of iOS 16.0: /Users/saamer/Library/Developer/Xcode/DerivedData/BeAwareConf-hbgkemigbbowvzhfaegoplloiayn/Index.noindex/Build/Products/Debug-iphoneos/WhisperKit.swiftmodule/arm64-apple-ios.swiftmodule

我知道这个问题过去已经被问过很多次了,但似乎没有人对此得到很好的答案。所以我会尝试再次问这个问题,以防苹果为这个问题创建一个解决方案。

对于 KhutbahCaptioning,我想为拥有现在 iOS 的用户使用开源“WhisperKit”sdk,并为这些用户提供 iOS 16 或更高版本的新功能。但不希望仍在使用 iOS 15 的用户得不到其他对他们有用的更新。

错误仅在这一行

import WhisperKit
,我知道对于SwiftCharts我能够像这样使用canImport:

#if canImport(Charts)
import Charts
#endif

这很有效,但是当我尝试为 WhisperKit 执行此操作时,我收到了上面的错误。我尝试了过去的类似问题中建议的所有解决方案,但没有一个有效。有人成功了吗?

ios swift
1个回答
0
投票

好吧,我能够构建项目了!不知道未来是否有或者将会有更好的解决方案。

我如何使用 iOS 15 构建 iOS 16 库:

这是一个非常漫长的过程,但我分叉了 WhisperKit 存储库并创建了自己的,并添加了 iOS 15 检查并将版本要求更改为 iOS 15,如您所见在我的提交历史记录中

问题是它也依赖于另一个存储库,幸运的是它也是开源的。所以我也分叉了它并做了类似的更改,但是我对分叉的更改没有得到反映,我了解到我需要创建一个新版本,这是我通过转到 GitHub 中的存储库 -> 转到代码选项卡 -> 点击标签 -> 发布 -> 起草新版本 -> 选择一个标签 -> 给出更高的数字。

然后在 WhisperKit 代码包解析和 swift 文件中引用这个版本。它成功了,我能够成功构建!在我的代码中,我添加了一项检查以确保 iOS 16 及更高版本的设备使用库代码

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