CocoaPods使用
[TOC]
CocoaPods
获取Ruby类的属性
https://www.jianshu.com/p/d8eb397b835e
CocoaPods官方API文档
https://www.rubydoc.info/gems/cocoapods/Pod/
下载和安装
下载包 sudo gem install cocoapods
提示
查看 gem 使用的安装源gem sources -l
移除一个 gem 安装源gem sources --remove https://rubygems.org/
新增一个 gem 安装源gem sources -a http://ruby.taobao.org/
1 |
|
编译安装安装:
pod setup
(根据测试,此步骤可以省略)
执行安装命令后会向~/.cocoapods/repos
这里拉取git内容,大概有341MB。等待一段时间之后,如果没有错误的话 CocoaPods 就安装成功了。
为什么要执行
pod setup
?
所有的项目的Podspec
文件都托管在 https://github.com/CocoaPods/Specs 第一次执行pod setup
时,CocoaPods 会将这些podspec索引文件更新到本地的~/.cocoapods/
目录下,这个索引文件比较大,有 300多M 左右,在执行一次pod install
之后会增加到700多M。所以第一次更新时非常慢。
使用示例 AFNetworking
先搜索一下所需要的第三方库是否支持 CocoaPods 安装
pod search AFNetworking
搜索结果是(部分结果,根据具体的库不同,结果而不同)
-> AFNetworking (3.1.0) //AFNetworking 的最新版本
A delightful iOS and OS X networking framework.
pod ‘AFNetworking’, ‘~> 3.1.0’ //添加进配置文件的时候需要的代码
- Homepage: https://github.com/AFNetworking/AFNetworking
- Source: https://github.com/AFNetworking/AFNetworking.git
- Versions: 3.1.0, 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 3.0.0-beta.3,
3.0.0-beta.2, 3.0.0-beta.1, 2.6.3, 2.6.2, 2.6.1, 2.6.0, 2.5.4, 2.5.3, 2.5.2,
2.5.1, 2.5.0, 2.4.1, 2.4.0, 2.3.1, 2.3.0, 2.2.4, 2.2.3, 2.2.2, 2.2.1, 2.2.0,
2.1.0, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 2.0.0-RC3, 2.0.0-RC2, 2.0.0-RC1, 1.3.4,
1.3.3, 1.3.2, 1.3.1, 1.3.0, 1.2.1, 1.2.0, 1.1.0, 1.0.1, 1.0, 1.0RC3, 1.0RC2,
1.0RC1, 0.10.1, 0.10.0, 0.9.2, 0.9.1, 0.9.0, 0.7.0, 0.5.1 [master repo]- Subspecs:
- AFNetworking/Serialization (3.1.0)
- AFNetworking/Security (3.1.0)
- AFNetworking/Reachability (3.1.0)
- AFNetworking/NSURLSession (3.1.0)
- AFNetworking/UIKit (3.1.0)
……
配置文件的书写
- 在 *.xcodeproj 所在的文件夹下建立 Podfile 为名,的无扩展名文本文件,文件需要的编码是 UTF-8 换行符为 UNIX 格式。
这里根据文档,也可以执行pod init
就会在当前目录生成一个 Podfile 文件。 - Podfile 的文件内容
1 |
|
- `platform :ios, '7.0'` 最低支持的 iOS 版本。
- `target 'CloudStorageHelper'` 这里是将要向哪个 Target 添加库文件。
- `pod 'AFNetworking', '~> 3.1.0'` 需要添加的第三方依赖库和版本。
- 只在Debug模式下加入pod库
1 |
|
安装依赖库
pod install
命令需要切换到 Podfile 所在的目录执行pod install --clean-install
忽略本地缓存,强制远程pod库完整安装pod install --repo-update
安装前,强制更新索引库(pod repo)pod install --no-repo-update
安装前,忽略更新索引库(pod repo)
更新依赖库
pod update
命令需要切换到 Podfile 所在的目录执行
降级依赖库步骤
- 修改依赖库对应的版本代码
- 执行
pod install
不确定pod update
是否有同样的效果
删除依赖库步骤
- 删除依赖库对应的版本代码
- 执行
pod install
不确定pod update
是否有同样的效果
创建 pod 库
1 |
|
升级CocoaPods
直接执行 sudo gem install cocoapods
或者 gem update cocoapods
卸载 CocoaPods
参考:http://www.cnblogs.com/wangxiaorui/p/5653095.html
CocoaPods repo管理
列出所有repo
pod repo list
添加repo
pod repo add ...
更新全部repo
pod repo update
更新指定repo
pod repo update [repo_name]
删除指定repo
pod repo remove [repo_name]
CocoaPods 缓存路径
~/Library/Caches/CocoaPods
CocoaPods repo 换源
当执行与官方源相关的命令时(比如使用包含在官方源中的pod库),会自动初始化官方源。pod repo init
会主动初始化官方源。
官方源其实就是个git库,有自己的git更新源
- 已经初始化好了官方源
1 |
|
- 未初始化官方源时
所有支持的命令
pod env
查看 CocoaPods 安装环境
https://guides.cocoapods.org/terminal/commands.html