在Xcode中添加了iOS框架

时间:2014-11-12 02:58:09

标签: ios xcode frameworks

是否需要在Xcode中添加Framework?

使用MultipeerConnectivity。

我只在.h或.m文件中添加#import头文件,

而不是在Link Binary With Libraries中添加MultipeerConnectivity.framework

在项目中添加框架。

我的行为有任何缺点吗?

感谢您在我的问题上花了宝贵的时间。

最佳,

2 个答案:

答案 0 :(得分:1)

如果框架头中所需的只是一个#defined常量,那么您可能不需要链接到框架。否则,有必要告诉Xcode使用什么框架,以便链接器可以完成它的工作。

此外,可能有多个框架提供相同的符号,但提供了不同的实现。因此有必要指定使用哪个框架。

答案 1 :(得分:1)

您不需要明确链接和捆绑Apple框架,因为它们已经包含在设备中。通常在包含框架时#import所谓的"伞形标题"。这基本上是一个头文件,包含所有框架头文件的#import语句。

例如,MultipeerConnectivity/MultipeerConnectivity.h看起来像这样:

//
//  MultipeerConnectivity.h
//  MultipeerConnectivity
//
//  Copyright 2013 Apple Inc. All rights reserved.
//

// MultipeerConnectivity headers
#import <MultipeerConnectivity/MCError.h>
#import <MultipeerConnectivity/MCPeerID.h>
#import <MultipeerConnectivity/MCNearbyServiceAdvertiser.h>
#import <MultipeerConnectivity/MCNearbyServiceBrowser.h>
#import <MultipeerConnectivity/MCSession.h>
#import <MultipeerConnectivity/MCBrowserViewController.h>
#import <MultipeerConnectivity/MCAdvertiserAssistant.h>

作为了解有关此主题的更多信息的一部分,您还应该查看有关weak linking的信息。