目的
为了提升开发效率,增强复用性,预研了一下代码复用方案。具体主要有以下几种。本文先介绍使用Pod私有库
方案的实现方法。
方法
主要参照利用CocoaPods创建私有库即可创建成功,区别是这里创建的是Swift
库而不是Object-c
库。
创建私有的Spec Repo
# pod repo add [Private Repo Name] [GitHub HTTPS clone URL]
$ pod repo add MySpecs https://git.coding.net/kensla/MySpecs.git
创建Pod项目工程
#pod lib create [项目名]
$pod lib create MyLib
添加实现代码
开发模式下测试pod库的代码
打开Example工程目录Podfile文件:
pod 'MyLib', :path => '../' # 指定路径
#pod 'MyLib', :podspec => '../MyLib.podspec' # 指定podspec文件
然后在Example工程目录下执行 pod update
命令安装依赖,打开项目工程,可以看到库文件都被加载到Pods子项目中了
提交Pod库到Git仓库
$ git add .
$ git commit -s -m "初始化MyLib 库"
$ git remote add origin git@git.coding.net:kensla/MyLib.git #添加远端仓库
$ git push origin master #提交到远端仓库
$ git tag -m "first release" "0.1.0" #打上标签,这个很重要
$ git push --tags #推送tag到远端仓库
创建并提交MyLibPod库的podspec文件到私有Spec Repo仓库
配置MyLibPod库的podspec 文件
验证MyLib.podspec
pod lib lint --allow-warnings
本地测试MyLib.podspec文件
打开Example工程目录Podfile文件修改下pod 的引用
#pod 'MyLib', :path => '../' # 指定路径
pod 'MyLib', :podspec => '../MyLib.podspec' # 指定podspec文件
然后在Example工程目录下执行pod update命令安装依赖,打开项目工程,现在可以看到库文件都被加载到Pods子项目中了
向Spec Repo提交podspec
在Terminal中执行 cd进入MyLib项目根目录然后,执行以下命令:
# pod repo push [Repo名] [podspec 文件名字]
$ pod repo push MySpecs MyLib.podspec
注意步骤
先把pod
升级到最新版
sudo gem install -n /usr/local/bin cocoapods --pre
加前缀
在创建Pod项目工程
阶段,第一步:项目名最好加上前缀
,或者取一个不会跟已有库重复的名称
减前缀
在创建Pod项目工程
阶段, 第五步,不要给类起前缀
,Swift
不推荐前缀法
忽略警告
pod lib lint --allow-warnings
pod repo push NovaSpecs MyLib.podspec --allow-warnings
使用
pod search MyLib
没搜到私有库
git
工程加入团队成员
索引文件工程*Specs
加入团队成员,*Lib
加入团队成员
Demo
Specs
地址NovaSpecs,lib库
MyLib,测试Demo工程
TestMyPodLib
参考
*
利用CocoaPods创建私有库
*
使用Cocoapods创建私有podspec
参考文档一
制作 CocoaPods 依赖库
如何创建私有 CocoaPods 仓库
pod私有库的创建和使用
pod Spec创建和配置实现自己项目pod管理
iOS开发-- 创建pod私有库
CocoaPods应用篇之搭建并发布自己的私有库
CocoaPods 私有仓库的创建(超详细)