ios组件化开发,类似于自己写一个第三方库一样,然后被主工程调用。
组件化开发,需要一个索引库,因为每个组件都有一个xxx.podspec 文件,因此需要一个库去专门存放索引。这类似于一本新华字典有专门的目录,通过目录可以快速找到对应的组件和版本。
1.创建索引库
首先可以在github上创建一个远程索引库。
然后将该索引库添加到本地
pod repo add 本地索引库的名字 远程索引库的地址
例如
pod repo add privatespec https://github.com/lijsrn/privatespec.git
2.创建组件库
例如开发中有一些通用的工具类,我们就可以创建一个组件,将工具类放入这个组件中。
1.创建组件
终端键入命令
pod lib create JTool
JTool是组件名,这个命令会出现下面操作,然后创建一个模板项目。
扫描二维码关注公众号,回复:
9889314 查看本文章
2. 编写代码
最后生成的项目结构如下
点击查看索引文件
根据需要可以对索引文件进行修改。
两种方式添加创建文件
第一种是如前一张图所示在此文件下创建文件,
第二中,可以将已经创建好的文件拷贝到Classes目录下,然后执行pod install命令,同样也可以。
注意:Assest文件除了可以放图片,可以存放前端页面的文件:html、css、js文件,需要修改资源文件的路径
3.组件打包
将写好的代码进行提交并打上tag,上传到远程仓库
git add .
git commit -m “xxx"
git remote add origin 远程代码仓库地址
git push origin master
git tag 版本号 (注:这里的版本号必须和podspec里写的版本号一致)
git push --tags
将podspec文件提交
pod repo push 索引库名 xxxx.podspec --verbose --use-libraries --allow-warnings
可以在远程索引库看到新添加的索引
3.使用组件
在另一个项目需要用JTool时,需要对podfile做出修改
source 'https://github.com/CocoaPods/Specs.git' #podfile从CocoaPods检索
source 'https://github.com/lijsrn/privatespec.git' #podfile会从privatespec这个索引库去检索
pod 'JTool','~>0.1.0' #引入新添加的库