iOS 制作 framework 教程

时间:2023-03-08 18:08:36

直接看步骤 废话不多说,哈哈!

1、新建一个静态库工程:

iOS 制作 framework 教程

2:取自己喜欢的名字:

iOS 制作 framework 教程

3、删除向导所生成工程中的 Target:

iOS 制作 framework 教程

3、删除TestFrameWork对应的工程文件夹:

iOS 制作 framework 教程

5:删除bulid 关连项

iOS 制作 framework 教程

选择左下角Manager Scheme

iOS 制作 framework 教程

选中 Scheme,点击左下角的减号删除:

iOS 制作 framework 教程

删除完成后,点击 OK 返回。

5、增加一个新目标。点击 “Add Target”

iOS 制作 framework 教程

在弹出的对话框中选择 Mac OS X 下的 Bundle:

iOS 制作 framework 教程

iOS 制作 framework 教程

如上图,给库取一个名字,保持默认的 Framework(CoreFoundation),然后点击 Finish。

6、修改新目标的工程设置。选中 TARGETS 中对应的目标, Build Settings 页:

iOS 制作 framework 教程

7.target 上右键get Info 在Build  Settings下面设置下面的几项内容

a.Base SDK选择Latest IOS(IOS 5.1)

b.Build Active Architecture Only选择NO

c.Drad Code Stripping设置为NO

d.Mach-O Type 为Relocatable Object File

e.Link With Standard Libraries为NO

f.Wrapper Extension修改为:默认的bundle改成framework

g.在Architectures选项选择Standard(armv6 armv7) (不这样编译会报错)

h.工程Info中将Bundle OS Type code的值BNDL改为:FMWK

在 Deployment 下,将 “Mac OS X Deployment Target”改为”Compiler Default”,

将 “Targeted Device Family”改为需要的,此处改成了”iPhone/iPad”,

同时可以根据需要修改 “iOS Deployment Target”,此处改为了 “iOS 3.0”:

8、修改预编译头:就是注释掉全部

iOS 制作 framework 教程

10、向工程中添加一个类

iOS 制作 framework 教程

iOS 制作 framework 教程

iOS 制作 framework 教程

10、在myTestClass。h添加一个方法testFounction

iOS 制作 framework 教程

11、在myTestClass。m中实现方法testFounction

iOS 制作 framework 教程

12.打开Build Phases选项卡,右下角点击Add Build Phase–Add  copy Headers,然后界面就会多出来一个Copy Headers的菜单,然后添加源文件。完成后如图所示:(Compile Sources 添加.m文件)

点击右下角的 “Add  copy Headers”:

iOS 制作 framework 教程

添加完成后,展开 “Copy Headers”:点击加号:

iOS 制作 framework 教程

选中需要暴露的头文件,此处我们选择 “myTestClassA.h”:

iOS 制作 framework 教程

点击 Add 按钮完成添加:此时,我们看到导出的文件在 Project 下,这样是不能暴露给别人使用的,将其移动到 Public 下:

iOS 制作 framework 教程

12.然后Build & Run ,

iOS 制作 framework 教程

里成功很近了 ,哈哈!

13.下面随便把我们在上面生成的framework 导入到其他的工程就可以使用了,哈哈!

iOS 制作 framework 教程

找到刚才我们FrameWork 的工程目录的Bulid->Products->Debug-iphonesimuator->TestFrameWork.farmework

iOS 制作 framework 教程

14.下在你想用的地方导入头文件

#import <TestFramework/myTestClass.h>

用法如下:

  1. myTestClass* vc1=[[myTestClass alloc]init];
  2. [vc1 testFounction];
  3. [vc1 release];

15.Bulid&Run

iOS 制作 framework 教程

但是上面程序,我测试,会出现内存泄露!