一个庞大的工程,把公共的功能组件化是一个非常明智的做法。好处只能说是只可意会,不可言传,当你真正落地到项目中去,你就会发现它的魅力所在。
如果不知道什么是cocoapods的读者,请移步到万能的度娘。我们直接进入正题,手把手教你搭建本地组件化工程。
-
创建一个名为LocalPod的iOS工程,然后在工程目录下创建本地仓库目录,我把它命名为lcPod,在该目录内创建仓库并命名为 Code。
-
打开终端cd到 Code 目录下面, 创建 podspec 文件,文件名最好与仓库名相同,不然就要修改podspec文件里面的spec.name。创建命令如下
pod spec create Code
把你需要组件化的代码拖到Code目录下,目录结构如下
-
创建Podfile文件,cd到工程目录下执行如下命令
pod init
在工程目录下就会生成Podfile文件
-
在Podfile文件中添加仓库路径
pod '仓库名', :path => '仓库路径'
-
保持在工程目录下执行如下命令
pod install
这时候你以为大功告成了,然而并没有那么简单。你会发现在执行命令时报错,错误如下截图
提示非常贴心,告诉我们有3个错误和2个告警。相信大家都是英语高手没必要我再翻译了。我们必须解决其中的3个错误,当然告警你也可以顺带解决一下,我在以下教程只解决了3个错误。这时候有些人就会有疑问,这些错误和告警究竟在哪里解决呢?答案就是在第二步我们生成的podspec文件里面进行修改。 -
根据错误提示对podspec文件进行修改,更多podspec文件的常用配置字段可以自行百度一下
- 修改license
- 修改source
- 添加描述
解决了3个错误,再次执行pod install,这个时候已经没有报错了,欣喜若狂的你迫不及待的打开工程想测试一下,此时你会发现我们刚添加进去的源码文件并没有被载入到Pods里面。
这时候我们还需要设置可供下载文件路径,依旧是在podspec文件里面设置
- 修改license
-
设置可供下载文件的路径
然后再次执行pod install,你就可以发现源码已经被载入到Pods里面了。
-
测试
在需要使用的地方import头文件
看到控制台打印的信息,终于大功告成。
最后提示一下大家,如果源码有改动,一定要、一定要、一定要clear一下工程再重新运行。
若是本文对你有用,请给个赞呗。