Swift项目中的链接框架和库

时间:2015-05-24 15:46:17

标签: ios swift

我的iOS应用使用AVPlayer播放声音。要做到这一点,我必须在类的顶部键入以下内容:

import AVFoundation

我来自Objective-C背景,所以我去了Xcode项目的 General 标签,并通过点击 Linked框架和库下的加号按钮添加了AVFoundation EM>。黄色工具箱出现在我的项目中。我必须这样做吗?

我试图将它从项目中移除 - 无论是从侧边栏还是在Xcode首选项中,我的应用程序仍然可以正常播放。 import处理一切事情也是如此吗?

1 个答案:

答案 0 :(得分:8)

是的,Swift中的import与Objective-C中的@import基本相同(而不是#import <…>),导入模块

最近推出了这个新功能(模块)(1 - 2年前?),确实为您导入框架,而无需将应用程序与其明确链接:使用模块时({在ObjC中{1}},在Swift中@import,编译器将看到模块名称,并为您隐式和自动地将您的应用程序与框架链接。

这是我们在import是唯一选项的日子里没有的新功能,我们必须自己手动添加系统框架。

(请注意,在iOS8到来之前,模块仅适用于Apple的框架。但是现在您可以在构建iOS8时构建自己的动态框架,它们也可用于第三方框架,只要它们可用有一个#import

如果您有兴趣,可以阅读更多in the Clang documentation itself。各种博客文章也谈论了这个主题(例如,第一个Google结果是this blog post