iOS开发资料收集区

组件30-二进制:二进制化-快速自动生成framework

2017-07-14  本文已影响257人  Lovell_

复习:
二进制解决的是编译慢的问题,直接编译成一个二进制,省去编译的过程。
静/动态库的操作
二进制实践:
1、手动打包,组件库测试工程添加一个.framework静态库,拖入引用代码。编译成静态库放在和源码文件层次的同一个层次的文件夹Products中,头文件要单独弄一份出来。源码和二进制的切换.
创建库工程或者创建复合工程,目的就是拿到.framework。
2、自动打包方案:就是本篇要说的——对上传到远程的、打好标签的源码进行二进制化,17'18''。

一、cocoapods-packager

1. 作用:快速完成类库的打包。仅仅针对于pod模板库,找到spec,进行打包;
2. 安装:sudo gem install cocoapods-packager
3. 使用:环境变量选中是源码 pod package spec文件名(注意:是在本地模板库文件夹下,使用该命令,即本地有podspec文件的那个文件夹下,该命令会根据podspec中的信息去打包,见《快速打包命令在哪个文件夹下使用.png》)。
4.使用快速打包前提:该工程是模板库工程;已经上传到远程;已经打好标签。
5.打好包的文件在何处:在podspec同一个文件下,即执行快速打包命令的那个文件夹下,继续进入ios/XX.framework/version/A文件夹中。
6.包信息:模拟器和真机的所有CPU构架
7.小问题:如果pod update安装一下,发现安装的不是最新tag版本,应该变成二进制库的没有变成二进制库,那么,方案一:pod cache clean -all、删除pod文件夹、删除Podfile.lock 、删除.workspace;如果方案一无法解决,那就方案二:pod repo update (把库更新下,不过时间会比较长)

快速打包命令在哪个文件夹下使用.png 环境变量选中源码.png

二、自动打包都省略了哪些步骤

  1. 在库测试工程中添加targets(即.framework库);
  2. 修改.framework库对应的设置(全构架、静态库、暴露头文件、release版本);
  3. 拖文件到静态库对应的文件夹中。
~操作库的一些命令:
  1. 查看库的构架:lipo -info 库名
  2. 裁剪库:lipo -remove armv7s XMGSegmenBar -output XMGSementBarRemove7s (XMGSegmenBar、XMGSementBarRemove7s都是库名,从库中拆减掉armv7s 构架)
上一篇 下一篇

猜你喜欢

热点阅读