一分钟大幅度降低iOS项目编译时间

2017-07-10  本文已影响145人  江水东流

项目二进制化可以把第三方库或者自己写的模块打包成framework库,减少编译速度.
目的是项目只用编译自己的代码 cocoapods引用的第三方不用编译.cocoapods有现车的打包成framework方法,很多人不会用.
OC语言制作动态库时支持iOS8+,iOS8以下版本只能打成静态库
Swift只能做成动态库,Swift不支持静态库.(很多人说swift的是打包成静态库,都是错误的. cd 到framework根目录,file 可执行文件名(exec黑色的文件名)显示AFNetworking (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64
) dynamically动态库的意思


屏幕快照 2017-07-10 10.48.11.png

use_frameworks! 作用是把三方库打包成动态库,引用swift第三方必须加上这句话,在使用swift第三方时候要在每一个文件里面引用 如 import SwiftyJSON

引入的OC第三方库不要在桥接文件引入,而是和用swift第三方一样,在每一个文件里面引用 如 import AFNetworking

如果在桥接里面引用,则项目用的是源码,不是framework,这样编译速度慢,直接在每个项目里导入模块,用的是framework,编译速度快.

屏幕快照 2017-07-10 10.09.16.png
上一篇 下一篇

猜你喜欢

热点阅读