【问题标题】:iOS Framework Added In XcodeXcode 中添加的 iOS 框架
【发布时间】:2014-11-12 02:58:09
【问题描述】:

是否需要在 Xcode 中添加框架?

用于使用 MultipeerConnectivity。

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

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

在项目中添加框架。

我的行为有什么缺点吗?

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

最好的,

【问题讨论】:

    标签: ios xcode frameworks


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      您无需显式链接和捆绑 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 的信息。

      【讨论】:

        猜你喜欢
        • 2010-09-27
        • 1970-01-01
        • 1970-01-01
        • 2011-10-21
        • 2011-07-20
        • 1970-01-01
        • 1970-01-01
        • 2017-10-13
        • 2011-09-14
        相关资源
        最近更新 更多