POD
在开发OS/或者是iOS应用时,都会使用的Pod作为第三方管理工具。在开发swift或者是oc项目时都会使用到。
安装POD
1.更新gem
$sudo gem update --system
2.更换Ruby镜像
$gem sources --remove https://rubygems.org/
$gem sources -a https://gems.ruby-china.org/
$gem sources -l (用来检查使用替换镜像位置成功)
3.安装cocoaPods
$sudo gem install cocoapods --pre或$sudo gem install -n /usr/local/bin cocoapods --pre
这个就不多讲了,网上教程很多。原来都用的淘宝的镜像,现在只要更新一下镜像重新安装一下即可。
Pod使用
1. 打开终端
2.cd到项目文件下
3.执行touch podfile
4.用编辑器打开podfile,vim podfile/emacs podfile/再或者就是直接去项目文件下使用文本编辑器打开
5.搜索需要安装的第三方库 pod search afnetworking
6.pod 'AFNetworking', '~> 3.1.0'复制到编辑器中。这里讲一点指定版本和不指定版本的区别,指定版本在install时就会下载指定版本的第三方文件,如果不指定都是下载最新的第三方文件 。使用私有库
pod'私有库名称', :podspec =>'git地址'
7.pod install 和pod update
这里说一下pod install 和pod update
pod install 是你第一次在你项目中检索某个pods,或这是当你编辑podfile时,使用pod install
每次使用pod install 都会下载新的pod,每次编辑的第三方版本都在Podfile.lock文件中
pod update 当你运行pod update 时将会找到一个更新后的pod name和版本,不会考虑Podfile.lock
只更新到podfile中指定的版本。
简单点就是install 会考虑Podfile.lock的感受,update 不管你Podfile.lock是说我只关心podfile里面写的是什么。
pod install --no-repo-update 在使用install时会自动更新索引文件podspec,使用--no-repo-update可以禁止更新索引文件
pod update --no-repo-update 如上
为自己的项目创建 podspec 文件
pod spec create podspec_name。
具体的制作自己的pod 公有库和私有库在我见书中有写《cocoapods公共库的前情提要》《让自己的代码支持cocoaPods》《cocoapods私有库的创建和更新》
使用原理
Pods 项目最终会编译成一个名为 libPods.a 的文件,主项目只需要依赖这个 .a 文件即可。
对于资源文件,CocoaPods 提供了一个名为 Pods-resources.sh 的 bash 脚本,该脚本在每次项目编译的时候都会执行,将第三方库的各种资源文件复制到目标目录中。
CocoaPods 通过一个名为 Pods.xcconfig 的文件来在编译时设置所有的依赖和参数。
这个可以打开你的带有cocoapods的项目
可以查看途中标识的两个部分。原理就在这里
Pods原理
远程索引库:远程索引库中放着第三方框架的描述信息,描述信息中油第三方源代码的地址也就是podspec文件存在远程索引中
在使用pod setup时,我们会将远程索引库下载到本地,所以在执行这个命令时很漫长。完后就会在本地生成本地索引库。同时也会生成一个检索索引文件
pod search xx 先去本地检索索引文件检索这个第三方框架
pod install 会先去描述信息中找到代码地址,然后下载到项目中
所以上传代码时,很简单的描述,1.提交代码到git 2.填写描述信息文件 3.将描述信息上传到远程索引文件中。
这些就是Pods的原理
下期预告:WCDB
正在研究中,日期暂定
总结:
在使用中可能会出现一些错误,可以查看cocoapods Guide或者是cocoapods官网
本人联系方式:qq:513961360
email:[email protected]
也可以加我们的qq群希望能与朋友们一起聊天和学习.群里还有很多iOS开发者,帮助我们解决问题,并且同时学习.
qq群号:580284575