iOS Framework 制作教程

iOS Framework 制作教程,第1张

概述论坛会员kibernet分享的iOS Framework 制作教程,并且不是静态包。 我们使用一种变通的方法来制作 iOS framework,废话不多说,上步骤: 1.打开Xcode创建一个“Cocoa Touch Static Library”工程,并删除现有的target. 2.右键project选择添加New Target,在d出的窗口中找到Cocoa ,在Cocoa右侧窗口中选择“Loa

论坛会员kibernet分享的iOS Framework 制作教程,并且不是静态包。

我们使用一种变通的方法来制作 iOS framework,废话不多说,上步骤:

1.打开Xcode创建一个“Cocoa touch Static library”工程,并删除现有的target.

2.右键project选择添加New Target,在d出的窗口中找到Cocoa,在Cocoa右侧窗口中选择“Loadable Bundle”。
注意:到这步的时候不要选择framework,应为framework是MAC OS上的,iOS是不支持的,但是iOS 支持“Loadable Bundle(cfbundle)”

3.target 上右键get Info 在Build Settings下面设置下面的5项内容:
a.搜索Wrapper Extension,把默认的bundle改成framework.
b.修改Mach-O Type 为Relocatable Object file.
c.关闭Dead Code StripPing,把勾去掉!
d.关闭link With Standard librarIEs.
e.移除所有关于“AppKit” 和 “Foundation”的参考,删除“Other linker Flags”的所有值,并删除“GCC_PREFIX_header“的值!

4.在frameworks Info.pList文件中将Bundle OS Type code的值BNDL改为:FMWK,并且在target的 get info窗口中的PropertIEs标签栏下也将Type改为FMWK。

5.在工程中添加你的代码。
例如:我们添加一个类
#import <Foundation/Foundation.h>

@interface Help : NSObject {

}

- (voID)show;

@end

#import "Help.h"


@implementation Help

- (voID)show
{
NSLog(@"framework!!!");
}

6.在target上右键Add---New Build Phase---New copy headers Build Phase,此时target下面会多出一个灰色的文件夹—copy headers。

7.然后将我们刚才添加的Help类的.h文件从上面拖到下面的copy headers中,再在该文件夹上右键—Set Role---Public.

8.从上面将所有要打进framework的.m文件拖到target下的Compile Sources文件夹里。

9.编译,如果出错,那就在 Build下面的 将“Other linker Flags “设置为 –ObjC 、-all_load、-lxml2,不要写在一起,请一项项添加。

注意:如果编译出现大量的错误,说明你没有删除“AppKit” 和 “Foundation”的参考,

编译后参考:

 

在build/DeBUG-iphonesimulator下面出现一个framework文件夹:

 使用我们刚才制作的framework

在新的工程中导入framework

我们把刚才制作的kibernet.framework拷贝到新的工程的目录下,选择kibernet.framework文件夹

添加后的效果图

 使用framework中的类:
导入头文件

VIEwDID Load中测试一下:

输出结果:

 原帖地址:http://www.cocoachina.com/bbs/read.php?tid-75680.html

总结

以上是内存溢出为你收集整理的iOS Framework 制作教程全部内容,希望文章能够帮你解决iOS Framework 制作教程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1064913.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存