Objective-C:如何制作一个框架?

我是Objective-C的新手,但在Java和.NET方面有很多经验。

我试图在Xcode 4.2.1中将EGOPhotoViewer添加到我的iOS 5项目中。 但是在编译代码的时候,我得到了很多release,dealloc,retain等问题,因为我使用了自动引用计数 (我想!)。

我如何创build一个类库,框架或在Objective C中为其代码调用的内容,我可以添加到我的项目中?

编辑:我已经做了从JeremyP的方法插入代码与新的目标。 我在开始编译,但过了一会儿,我得到这个编译错误:

Undefined symbols for architecture i386: "_OBJC_METACLASS_$_EGOPhotoViewController", referenced from: _OBJC_METACLASS_$_PhotoViewController in PhotoViewController.o "_OBJC_CLASS_$_EGOPhotoViewController", referenced from: _OBJC_CLASS_$_PhotoViewController in PhotoViewController.o ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation) 

有人知道为什么吗?

你不能为iOS创build框架。 但是,您可以使用铍的技术创build静态库。 您也可以使用File / New / New Target...将静态库添加到现有项目中File / New / New Target...显然,创build目标后,您可以将Objective-C自动引用计数构build设置更改为新目标的“否”。

我认为可以在源文件级别打开和closuresARC,但我不知道如何。

为了您的目的,铍所描述的常规静态库将会很好。

只是为了不用担心插件的目的和传播这个词,本文档描述了如何使用Xcode,GIT和DoxyGen创build版本化,文档化的框架。

创build一个版本化的框架1.23

创build这样的框架的主要目的是重新分配它们。 我个人发现手动包含我从第三方接收的库和头文件是非常烦人的 – 特别是如果这些库是以模拟器和设备的不同版本交付的话。 该指南适用于经典中间件开发人员。 我已经写了这个function,允许Google Analytics(分析)的人们最终提供一些值得他们的品牌的东西。

本文档为您提供了一步一步的解释,捆绑了大量的屏幕截图。

打开Xcode – >文件 – >新build – >新build项目 – >框架和库 – >下一步 – >types名称,select文件夹 – >创build

这将是一个名为yourApp.a的库。 您可以在Derived Data文件夹中find它

我已经使用以下方法在多个场合创build了框架:

http://db-in.com/blog/2011/07/universal-framework-iphone-ios-2-0/