静态库使用场景
-
目前我的应用场景,项目由我们开发,但是客户需要自己拿项目去上架,但是我们又不想客户看到源码,所有有了把项目打成静态库的想法
-
还有一些三方库,不想开源的,也是采用的静态库方式
玩之前请先做好备份
一、首先创建一个静态库项目
截屏2020-06-05 23.36.07.png创建好的静态库项目
截屏2020-06-05 23.39.08.png
二、迁移原项目中的除了资源文件和pods库的所有文件到静态库项目中
*
用pods管理的库,在静态库项目中同样用pods来管理这些库
*
手动添加的库需要在静态库项目中手动导入一遍
在静态库中用pods导入库时,注意与原项目导入的库版本要一致
如何查看原项目pods三方库版本?
- 找到Podfile.lock文件
- 将Podfile.lock 改成Podfile.txt 就可以查看版本号
截屏2020-06-06 17.13.42.png1.把pods库导入后,我们的静态库项目长这样了
![截屏2020-06-06 17.21.28.png](https://img.haomeiwen.com/i8436312/e9c5ff8c807ad821.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)2.原项目需要迁移的文件如下图
截屏2020-06-06 17.25.35.png
- 将文件导入静态库项目并移除多余文件
- 原项目如果有pch配置文件,在静态库项目中同样需要配置
截屏2020-06-06 17.32.19.png5.设置静态库支持版本和设备
WeChat746a0dea9b3a9b2a4296d3a62e3f668d.png6.设置抛给外部调用的文件
7.command + B 编译成功后获取静态库和外部调用文件
真机环境和模拟器环境都可以各编译一份,再合并一个在真机和模拟器都可以用的静态库
这里只弄模拟器的,合并那个可以自己玩
截屏2020-06-06 17.56.57.png
- 将静态库导入原项目,删掉多余的东西,再运行看看效果
- 需要注意的是这些文件默认不会编译到静态库中
- 资源文件是不会打到静态库
Example:.xib文件、图片资源文件、.plist文件
感谢各位看官耐心看完
网友评论