gpt4 book ai didi

ios - 在 Swift 中有条件地导入一个基于 iOS 版本的框架(比如 Speech)?

转载 作者:IT王子 更新时间:2023-10-29 05:43:49 24 4
gpt4 key购买 nike

有什么方法可以根据运行时 iOS 版本有条件地在 Swift 中导入框架?

特别是,我有一个部署目标为 iOS 8 的应用程序。我想在应用程序中使用新的 Apple Speech 框架,如果它在运行时可用的话。我知道用于代码部分的 #available(iOS 10, *) 指令,以及可用于整个代码段的 @available(iOS 10, *) 指令类(class)。所以我可以很容易地避免执行任何使用语音框架的代码。但是在包含使用 Speech 的类的文件中,我需要“import Speech”语句,而这两个指令都不能在那里使用。我发现,即使我的整个类(class)都有 @available(iOS 10, *) 指令,当我在 iOS 9 设备上运行我的应用程序时,它在启动时被杀死了

"dyld: Library not loaded: /System/Library/Frameworks/Speech.framework/Speech".

我是否遗漏了什么,或者只能在部署目标为 10 的应用中使用语音框架?

最佳答案

您可以将框架设为可选(详细信息和图片来自 Ray Wenderlicht ):

Making a framework optional

这与您对 @available 的使用相结合,应该可以防止系统尝试将它加载到它不可用的设备上。

关于ios - 在 Swift 中有条件地导入一个基于 iOS 版本的框架(比如 Speech)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38536956/

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