是否需要在Xcode中添加Framework?
使用MultipeerConnectivity。
我只在.h或.m文件中添加#import
头文件,
而不是在Link Binary With Libraries中添加MultipeerConnectivity.framework
或
在项目中添加框架。
我的行为有任何缺点吗?
感谢您在我的问题上花了宝贵的时间。
最佳,
答案 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的信息。