CocoaPods安装
CocoaPods可以通过Mac自带RubyGems安装
- 如gem太老,更新升级gem命令
$ sudo gem update --system
升级成功后提示: RubyGems system software updated
- 安装CocoaPods命令
$ sudo gem install cocoapods
系统OS X EL Capitan以上安装:
$ sudo gem install -n /usr/local/bin cocoapods
如报错:ruby的软件源ruby gems.org使用亚马逊云服务,屏蔽。更换ruby源。
- 查看源
$ gem sources -l
- 移除源
$ gem sources --remove https://rubygems.org
- 添加源
$ gem sources -a https://ruby.taobao.org
重新执行安装CocoaPods命令
- 安装CocoaPods
$ pod setup
终端会停在Setting up CocoaPods master repo一段时间。
Cocoapods将所有项目的Podspec索引文件更新下载到本地的~/.cocoapods/目录下,可以cd到这个目录,用du -sh
来看下载进度。
- 如想加速,可使用CocoaPods的镜像索引
$ pod repo remove master
$ pod repo add master 镜像地址
$ pod repo update
安装成功提示Setup completed。
如果提示ruby版本需大于等于2.2.2
- 查看ruby版本
$ ruby -v
- 安装rvm(RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换)
$ \curl -sSL https://get.rvm.io | bash -s stable
$ source ~/.bashrc
$ source ~/.bash_profile
- 安装成功后,列出已知的 Ruby 版本
$ rvm list known
- 安装ruby 2.3.0
$ rvm install 2.3.0
检查ruby版本显示:
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin16]
重新执行安装CocoaPods命令
CocoaPods使用
1. 创建需要使用CocoaPods管理框架的工程.
- 进入工程目录
cd /Users/XXX/Desktop/CocoaPodsText
- 在工程目录下创建Podfile文件
pod init
2. 编辑Podfile文件.
- 执行打开Podfile文件.其中#部分为注释部分.
open -a Xcode Podfile
- 在 target '
工程文件名
' do 与 end 之间输入你想写入的框架, 以AFNetworking为例:
target 'CocoaPodsText' do
pod 'AFNetworking'
end
也可执行
touch Podfile
新建一个名为Podfile(名字不能写错) 的文件,直接新建空的文档.然后对文档进行编辑,执行
open -e Podfile
打开空白文档.# Podfile文档格式: platform :iOS, '9.0' target "当前工程名" do pod '框架名', '~> 版本号' end
3. 执行第三方库的安装操作
- 同样在工程目录下,执行安装命令:
pod install
等执行完毕,所有Podfile中的第三方库都下载完成并设置好了编译参数和依赖。
pod install
只会按照Podfile的要求请求类库,如果版本号有变化,那么将会去失败.
在pod install过程中会执行podspec索引的更新,需要等待很久,因此为了提升速度可以执行如下命令, 关掉索引的更新
pod install --no-repo-update
并且在安装过程中,可以添加一个参数,用来提示cococapods做了哪些操作
pod install --verbose --no-repo-update
- 其中还可以调用pod update方法, 也可以达到第三方库安装的目的, 并且会更新版本.
pod update
会更新所有的类库,获取最新版本的类库.
pod update
此方法也会执行spec索引更新,需要等待很久.关掉索引更新
pod update --no-repo-update
每次更改了Podfile文件,都需要重新执行一次
pod updadte
命令
4. 安装成功后打开.xcworkspace工程目录
其中Pods工程目录是用来存放第三方库和配置文件的,上面的CocoaPods依旧是我们的工程文件, 在它之中,我们可以继续正常的编写代码。
为了验证是否安装成功, 我们可以在AppDelegate.m中引入我们所要使用的第三方库的头文件,如引入#import <AFNetworking.h>
这里需要注意的是, 以后再引入第三方框架,要当系统框架去引入用#import <框架头文件.h>
5. Pod搜索功能
CocoaPods上的大部分第三方框架均来自于GitHub, 因此数量也很庞大,记名字是很不明智的,因此,我们可以选择通过搜索来找到自己想要寻找的第三方框架。
- pod search 框架关键字
pod search fmdb
得到所有可用的库。
把你想要的框架的名字, 复制到Podfile文件中即可,Podfile文件中的第三方可以有多个,CocoaPods会全部帮你下载下来。
6. 以后添加,更新,删除框架
- 安装框架,不更新本地索引,不会升级本地代码库
$ pod install --no-repo-update
- 以后升级,添加,删除框架
$ pod update
- 更新框架,不更新本地索引,可以�安装新框架或者删除不用的框架
$ pod update --no-repo-update
- 查看哪些框架有更新版本
$ pod outdated
返回结果如下,此过程较慢.
Updating spec repo `master`
Analyzing dependencies
The following pod updates are available:
- SDWebImage 3.7.2 -> 3.7.6 (latest version 3.7.6)
注意
如果Podfile中未指定框架的版本,使用
pod install
,框架已存在pod中,则直接使用它.但pod update
会重新下载最新版本到pods中
CocoaPods升级
- 查看pod版本
$ pod --version
- pod升级
$ sudo gem install cocoapods --pre
CocoaPods卸载
- 移除pod组件,打开终端执行
$ which pod
然后输出路径,一般是 /usr/local/bin/pod
- 移除Cocoapods组件,继续执行
sudo rm -rf 路径
$ sudo rm -rf /usr/local/bin/pod
- 移除 RubyGems 中的 Cocoapods程序包
RubyGems(简称 gems)是一个用于对 Ruby组件进行打包的 Ruby 打包系统。 它提供一个分发 Ruby 程序和库的标准格式,还提供一个管理程序包安装的工具。
查看gems中本地程序包
在终端输入 gem list
然后会打印gem下的所有包,看到了我们当前cocoapods的版本号(1.0.0)
$ gem list
- 移除程序包 执行命令
sudo gem uninstall cocoapods -v 版本号
$ sudo gem uninstall cocoapods -v 1.0.0
选择,确认输入y
执行完命令后,最下面打印Successfully uninstalled cocoa pods -1.0.0 表示已经成功卸载了,可以输入gem list
在查看下.