Objective c 我应该如何处理捆绑包中的头文件?

Objective c 我应该如何处理捆绑包中的头文件?,objective-c,nsbundle,Objective C,Nsbundle,我想开发一个依赖插件(这里是可加载包)工作的程序。要求多个插件使用相同的AFNetworkingressource来发出网络请求。但是,我不知道把AFNetworking和CustomPluginProtocol头放在哪里 以下是我的程序结构目前的样子: MyApp.xcodeproj - AFNetworking - Header.h - Plugins - Plugin1.xcodeproj - PrincipalClass.m - Plugin2

我想开发一个依赖插件(这里是可加载包)工作的程序。要求多个插件使用相同的
AFNetworking
ressource来发出网络请求。但是,我不知道把
AFNetworking
CustomPluginProtocol
头放在哪里

以下是我的程序结构目前的样子:

MyApp.xcodeproj
  - AFNetworking
    - Header.h
  - Plugins
    - Plugin1.xcodeproj
      - PrincipalClass.m
    - Plugin2.xcodeproj
      - PrincipalClass.m
  - Classes
    - CustomPluginProtocol.h
    - MainClass.m
当然,来自
plugin
的每个
主类都符合
CustomPluginProtocol

  • 是否必须在每个包中复制标题
  • 我可以从我的插件中包含主程序
    AFNetworking
    头吗?如果是这样的话(我现在就是这么做的),我没有完成任何任务。我怎样才能得到它

编辑 好吧,也许我的问题不清楚

我希望我的插件使用来自主应用程序的源代码,比如
CommonClass.m
CommonClass.h
。插件是否需要捆绑包中的
CommonClass.h
,如果不需要,当我在插件范围内时,如何启用完成功能?

您有两个选项:

1) 生成一个包含
/headers/

2) 只需将标题发给开发人员即可


我更喜欢选项1,因为它更容易理解和跟踪所有内容,但像Photoshop这样的应用程序总是使用选项2,所以它是完全可行的。有了选项1,开发人员将把您创建的框架添加到他们的Xcode项目中,并且将
#include
。使用选项2,您会给他们一个标题文件夹,他们会把它放在方便他们的地方,然后将其添加到标题搜索路径中,并且
#include“FolderName/HeaderName.h”

标题文件不会添加到包中。除非您将文件添加为资源。每个需要AFNetworking的插件项目都会链接到该库。
AFNetworking
不是真正的库,因为它不是与我的主应用程序分开编译的。它只是文件夹中的一堆文件。如何正确制作
PluginN
参见
AFNetworking
标题?