iOS端组件化开发通常会用到 CocoaPods 远程私有仓库的方式来管理相关代码和依赖库。本文主要介绍搭建远程私有库的流程,以及依赖第三方音视频库 TXLiteAVSDK_Professional 为例子的操作介绍。
创建索引库和代码库这部分比较简单,可以参考网上资料,以下是为了演示已经创建好的索引库(码云)和代码库(Github):
1.索引库地址:https://gitee.com/qq2873546348/MyRepo.git
2.代码库地址:https://github.com/ZacharyBoom/YzlLiteAVManager.git
1.在终端输入以下命令将远程索引库添加到本地,路径就是第一步创建的索引库地址,之后在~/.cocoapods/repos目录下就能看到对应的仓库:
pod repo add MyRepo https://gitee.com/qq2873546348/MyRepo.git
2.新建一个目录,在该目录下创建模版库,并回答下如图的问题,正常情况下创建完成后会自动帮我们打开相应的Example项目:
pod lib create YzlLiteAVManage
实际操作中这一步可能会遇到输入命令回答问题之后,终端没有图中 Running pod install on your new library 的相关输出,本地目录生成的模块库也与下图不一致。笔者原本用的 Cocopods 版本是1.5.2,升级版本成1.6.1解决了这个问题。
3.测试本地示例,可以在模板库下的 Classes 目录添加自己的代码,在 Example 下面 pod install 就可以下载到:
4.修改模板库里面的podspec,并添加依赖 TXLiteAVSDK(依赖可选,这里是为了演示):
git add .
git commit -m 'firstCommit'
git remote add origin https://github.com/ZacharyBoom/YzlLiteAVManage
// 第一次push如果报错的话可以加上-f
// git push -f origin maste
git push origin maste
//打标签
git tag '0.1.0'
git push --tags
2.本地验证和远程验证模板库
//本地验证
pod lib lint --private
//远程验证,注意这里会验证 s.source 中的tag,如果没有打上相应的标签则会报错
pod spec lint --private
建议先本地验证再测试远程验证,这里重点说下有些开发者反馈不添加依赖 TXLiteAVSDK 会验证通过,添加了这个验证就不通过,这里建议试下终端输入的命令为以下命令,亲测没问题,:
pod lib lint --verbose --use-libraries --allow-warnings --skip-import-validation
3.添加组件到索引库
pod repo push MyRepo YzlLiteAVManager.podspec --verbose --use-libraries --allow-warnings --skip-import-validation
2.在项目里面 pod install 即可下载到对应的私有代码库和依赖库
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。