一、打包
1、framework结构调整
建议删除自动生成的头文件,以及生成的framework名称+Tests
和framework名称
文件夹下的.m和.h
2、设置静态库
build setting->All->Mach-o Type选择Static Library
Snip20170615_1.png如果不处理会报错not find Image
3、暴露公共头文件
Snip20170615_2.png4、生成Framework
编译真机Framework: 选择真机 command + B
编译模拟器Framework: 选择任意模拟器 command + B
5、合并真机和模拟器Framework
lipo -create 真机Framework镜像路径 模拟器Framework镜像路径 -output 合并后的Framework路径
注:这里的路径都是包含镜像
名称的
二、集成Framework
1、集成
将生成的Framework添加到工程(拖入或者Add)
General->Embeded Binaries-> +
生成的Framework
Build Phases->Copy Bundle Resources-> +
生成的Framework
2、基本使用
#import <Framework名称/需要引入的头文件>
import Framework名称
3、xib使用(Bundle)
NSBundle *adhomeBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:@"ADHome.framework" ofType:nil]];
ADViewController *vc = [[ADViewController alloc] initWithNibName:@"ADViewController" bundle:adhomeBundle];
[self.navigationController pushViewController:vc animated:YES];
三、问题(iOS10)
1、load
/* Methods for loading and unloading bundles. */
- (BOOL)load;
@property (readonly, getter=isLoaded) BOOL loaded;
- (BOOL)unload;
//始终not yet load
[bundle load];//始终返回为false
网友评论