@chenbinghua
2018-08-12T22:32:32.000000Z
字数 1820
阅读 1532
cocoapods
很多语言或技术平台都有第三方开源类库的类库管理工具,它们被称之为依赖管理工具
或者包管理器
等,如iOS的CocoaPods、Android的jcenter、java的Maven、Ruby的gem、node.js的npm。
这些类库管理工具都有两个主要作用:
1. 通过命令行下载第三方类库。免除手动下载之苦;
2. 解决第三方开源类库之间的依赖关系。如A框架和B框架都依赖C框架,如果同时集成A框架和B框架的时候,就不用下载两次C框架,并且保证项目里只有一个C框架;
而CocoaPods就是iOS最常用最有名的类库管理工具,当然iOS的类库管理工具还有Carthage,你可能会在Github上碰见过它。绝大部分有名的开源类库,都支持CocoaPods安装使用。
CocoaPods是使用Ruby开发的,还好我们的Mac都自带Ruby,可以使用Ruby的类库管理工具gem来安装CocoaPods。
没错,就是用Ruby的类库管理工具gem来安装我们iOS的类库管理工具CocoaPods,说起来有点拗口。
使用以下gem命令即可下载CocoaPods:
$ sudo gem install cocoapods
这里可能因为gem版本过低,下载出现问题,可通过以下命令升级gem:
$ sudo gem update --system
但是在执行sudo gem install cocoapods
命令之前,最好先修改gem的软件库,因为gem的软件库https://rubygems.org/在国外,被墙掉了,所以访问速度比较慢。可以使用以下代码将官方的 gem的软件库替换成国内淘宝的镜像:
$ gem sources --remove https://rubygems.org/
$ gem sources -a https://ruby.taobao.org/
$ gem sources -l
pod setup
pod init
pod search AFNetworking
编辑podfile文件
pod install
pod setup
远程索引库地址 https://github.com/CocoaPods/Specs.git
本地存放地址 /Users/用户名/.cocoapods/repos/master
把网上的远程索引库
(第三方框架描述信息)同步到本地本地索引库
pod search 检索第三方框架
如果是第一次搜索
根据本地索引库
生成一个检索索引文件
search_index.json
存放路径为/Users/用户名/Library/Caches/CocoaPods/search_index.json
从本地缓存的"第三方框架描述信息" 生成的检索文件中检索到 相关框架的信息
pod init 创建Podfile到自己工程的根目录
Podfile文件可以手动创建,但是建议使用pod init命令创建
Podfile文件作用?其实就是使用ruby语法编写的 "框架依赖描述文件"; 就是告诉cocoapods需要下载集成哪些框架
把第三方框架信息写到Podfile文件
pod install安装第三方框架
根据本地索引库的框架描述信息,第三方框架下载到/Users/用户名/Library/Caches/CocoaPods/ (与检索索引文件
同一个目录)
假如项目名是Afnetworking
创建并编写项目Afnetworking
打一个tag 0.01
pod spec create Afnetworking 在根目录创建Afnetworking.podspec文件
编辑Afnetworking.podspec文件,填写必要的信息
把项目上传到github
把Afnetworking.podspec上传到Cocospod
1.注册trunk pod trunk register wangshunzi@520it.com 'wangshunzi' --verbose
2.通过trunk推送podspec文件 pod trunk push Afnetworking.podspec
等待审核