博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS Framework 制作教程
阅读量:6433 次
发布时间:2019-06-23

本文共 1526 字,大约阅读时间需要 5 分钟。

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

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

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

2.右键project选择添加New Target,在弹出的窗口中找到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!!!");
}

@end

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中测试一下:

输出结果:

转载于:https://www.cnblogs.com/pengyingh/articles/2405715.html

你可能感兴趣的文章
sdl2.0示例
查看>>
数学 --- 高斯消元 POJ 1830
查看>>
Ejabberd源码解析前奏--集群
查看>>
[ZHUAN]Flask学习记录之Flask-SQLAlchemy
查看>>
【转】Install SmartGit via PPA in Ubuntu 13.10/13.04/12.04/Linux Mint
查看>>
PNG怎么转换成32位的BMP保持透明
查看>>
经验分享:CSS浮动(float,clear)通俗讲解
查看>>
WTL中最简单的实现窗口拖动的方法(转)
查看>>
数据结构—队列
查看>>
BZOJ4241 : 历史研究
查看>>
(LeetCode)两个队列来实现一个栈
查看>>
jquery封装常用方法
查看>>
什么是ICE (Internet Communications Engine)
查看>>
移动web开发之屏幕三要素
查看>>
求按小时统计的语句,该怎么处理
查看>>
TRUNCATE,DORP,DELETE
查看>>
Chrome的开发必备小技巧
查看>>
can-i-win(好)
查看>>
Centos6.5下安装protobuf及简单使用
查看>>
[SharePoint] SharePoint 错误集 3
查看>>