使用 swift 桥接库时 NSWorkspace 抛出错误

NSWorkspace throwing error when bridging library with swift

我正在使用 pocket api 并将其桥接以与 swift 一起使用,它在其 obj-c API 中为以下行抛出错误 "Semantic issue: Use of undeclared identifier 'NSWorkspace'" ]:

[[NSWorkspace sharedWorkspace] openURL:url];

该应用的目标是 os 10.9+,因此它应该可用。

关于导致该错误的原因有什么想法吗?

更新 我还在 iOS 中进行了测试,它返回了相同的错误,但使用 'UIApplication' 而不是 'NSWorkspace'。

我也忘了提到我必须在 Build Phases 选项卡中使用 -fno-objc-arc 标志,这样库就不会因为 ARC 而崩溃。

通过在 PocketAPI.m 中导入后添加以下代码,使其在 iOS 和 OSX 上运行PocketAPILogin.m:

#ifdef __IPHONE_OS_VERSION_MAX_ALLOWED
   #import <UIKit/UIKit.h>
#endif

#ifdef __MAC_OS_X_VERSION_MAX_ALLOWED
   #import <Appkit/AppKit.h>
#endif