iOS中.a和.framework静态库的创建与.bundle资源包的使用详解

2020-01-21 02:42:03王旭

Build Phases --> Copy Files 添加.h文件即可。

ios,framework,bundle,静态库,创建bundle

ios,framework,bundle,静态库,创建bundle

ios,framework,bundle,静态库,创建bundle

ios,framework,bundle,静态库,创建bundle

1.修改支持的架构

     4.1 设置支持所有模拟器架构 Build Settings --> Build Active Architecture Only --> Debug 改为 NO

     4.2设置支持所有手机架构

2.编译

     编译一次模拟器,编译一次手机。

     会生成.a文件 和 可见的头文件。

     使用命令行,合并刚刚生成的的两个路径,到另一个路径,例如:

     lipo -create 模拟器lib路径 真机lib路径 -output /Users/username/Desktop/libPSSTest.a

3.使用静态库

     注意:如果这个静态库需要依赖库,也是需要引入依赖库。

创建和打包 .framework 静态库

1.创建Framework项目

     iOS --> Framework & Library --> Cocoa Touch Framework

2.修改打包的framework是动态库还是静态库

     framework项目默认是动态库。

     静态库配置:Build Settings --> Mach-O Type --> 改为 Static Library

3.把需要编译成静态库的代码拖进项目

     设置可见头文件

     项目创建后,项目中只有一个主头文件。

     Build Phases --> Headers --> public 添加头文件

4.编译

     编译一次模拟器,编译一次手机

5.使用

     把framework引入项目。

     如果是动态库需要在 General --> Embedded Binaries 中引入配置。

     如果是静态库就不需要配置了。

静态库问题

1.静态库位置 Debug运行真机编译会把静态库生成到 Debug-iphoneos目录下

   Debug运行模拟器编译会把静态库生成到 Debug-iphonesimulator目录下