在macOS上运行SwiftUI app,但平台被识别为iOS.为什么?



在macOS上运行应用程序,但应用程序不识别macOS平台:

#if os(iOS)
NavigationView {
let _ = print("platform is iOS")
ProfileView()
}
#else
NavigationView {
let _ = print("platform is NOT iOS")
ProfileView()
}
// platform is iOS

我是否错过了一些关键步骤?

修复问题。在macOS上运行的应用程序是一个macCatalyst应用程序,所以你必须考虑到这一点:

#if os(OSX)
NavigationView {
let _ = print("platform is macOS")
ProfileView()
}

#elseif os(iOS)

#if targetEnvironment(macCatalyst)
NavigationView {
let _ = print("platform is macCatalyst")
ProfileView()
}
#else
NavigationView {
let _ = print("platform is iOS")
ProfileView()
}
#endif
#endif
// platform is macCatalyst.

最新更新