gpt4 book ai didi

ios - iOS app 或 Playground 中 Process 总是无法解决?

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

在 iOS 应用程序中,我想使用一个文件,该文件使用 Process 具有以下功能:

public func system(_ body: String) throws {
if #available(macOS 10.0, *) {
let process = Process()

...

} else {
fatalError()
}
}

然后,即使我应用了 Availability Condition 并且我没有调用此函数,我还是遇到了一个休闲错误:使用未解析的标识符“Process”。

我在 Playground 中尝试了类似的代码,但我得到了同样的错误。

我了解到我们不能通过这个问题以常规方式在 iOS 应用程序中使用 Process:How to execute terminal commands in Swift 4? ,我有一个解决方案,我将这些代码与每个使用平台的文件分开。但如果可以的话,我想使用这个单一文件。

请为我的理想提供另一种解决方案。

最佳答案

if#available() 对操作系统版本进行运行时检查

if #available(macOS 10.0, *)

如果代码在 macOS 10.0 或更高版本上运行,则评估为 true在 iOS/tvOS/watchOS 上,操作系统至少是最低部署目标。

你想要的是条件编译,取决于平台:

#if os(macOS)
let process = Process()
#else
// ...
#endif

关于ios - iOS app 或 Playground 中 Process 总是无法解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52312932/

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