2018CocoaPods安装和使用

2018 CocoaPods最新安装和使用以及跳过pod setup快速安装教程

第一步:修改ruby源

安装CocoaPods,需要ruby环境,然而Mac系统默认会安装好ruby环境。

打开Mac终端

gem sources -l //查看ruby源

默认情况下,会显示

https://rubygems.org/

ruby源在墙内是访问不到的,需要置换为国内

原来一直用的是淘宝的

gem sources -a https://ruby.taobao.org/

但是淘宝的ruby源不更新了,不建议使用 ,原因可以看这个链接 https://ruby.taobao.org/

现在用 https://gems.ruby-china.org

//删除之前使用的淘宝
gem sources --remove  https://ruby.taobao.org/
gem source -a https://gems.ruby-china.org

为了验证你的Ruby镜像是并且仅是gems.ruby-china,可以用以下命令查看:

gem sources -l   //检测是否成功

只有在终端中出现下面文字才表明你上面的命令是成功的:

https://gems.ruby-china.org

补充: 最近ruby-china域名变化由org更改为com,请大家改为 https://gems.ruby-china.com

gem sources --remove  https://gems.ruby-china.org
gem source -a https://gems.ruby-china.com

第二步:升级Gem

Gem是来管理Ruby标准包.

gem -v             //查看版本
sudo gem update --system   //升级gem

不升级在第三步可能,会报很多错误,因为Gem版本太低,无法安装第三步,安装CocoaPods

如果报错:

ERROR:  While executing gem ... (OptionParser::AmbiguousOption)
ambiguous option: -system
  • 安装RVM:

    curl -L get.rvm.io | bash -s stable
    
  • 查看版本:

    ruby -v
    
  • 已知版本:

    rvm list known
    
  • 安装版本:

    rvm install 2.4.1
    

第三步,安装CocoaPods

sudo gem install cocoapods  // Mac OS X 10.11前  输入这一条
sudo gem install -n /usr/local/bin cocoapods  //Mac OS X 10.11后   输入这一条

成功后

pod setup   

这条命令是将Github上的开源库都托管都安装Podspec索引安装到到本地,

测试
如果有版本号,则说明已经安装成功

pod --version //查看版本

pod setup成功后信息png

第四步,利用cocoapods来安装第三方框架

  • 1 进入要安装框架的项目的.xcodeproj同级文件夹

  • 2 在该文件夹中新建一个文件Podfile

pod init 

pod init首先需要判断当前目录有没有 XCODEPROJ 项目,如果没有直接报错;若果有单个 XCODEPROJ 项目,会直接创建一个 podfile 文件;如果有多个XCODEPROJ 项目,需要指定一个项目,否则会报错:

[!] Multiple Xcode projects found, please specify one

或者手动 新建文件Podfile vim Podfile

vim Podfile

Podfile文件中, 写入以下内容并保存 小提示:(终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq 可保存退出)

# Uncomment the next line to define a global platform for your project
platform :ios, '7.0'
target 'MyApp' do
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
# use_frameworks!
# Pods for sync
  pod 'AFNetworking' , '~> 3.1.0'
end 

解释一下
platform : ios, ‘7.0’代表当前AFNetworking支持的iOS最低版本是iOS 7.0, 使用时需要去掉前面井号
MyApp : 就是你自己的工程名字,
pod 'AFNetworking', '~> 3.1.0'代表要下载的AFNetworking版本是3.1.0及以上版本,还可以去掉后面的’~> 3.1.0’,直接写pod ‘AFNetworking’,这样代表下载的AFNetworking是最新版。

  • 3 上面信息表示文件中告诉cocoapods需要安装的框架信息

      a.该框架支持的平台
      b.适用的iOS版本
      c.框架的名称
      d.框架的版本
    
  • 4.导入第三方库
    –no-repo-update : 不更新仓库,迅速加载第三方框架
    pod install --no-repo-update
    pod update --no-repo-update
    

导入第三方库 成功后信息.png

  • 5.可使用search命令搜索类库名
    比如:
    pod search AFNetworking(也可以pod search UI等,可以查询你想要的)
    
    退出搜索, 输入 :wq

第五步,CocoaPods 中删除不需要的第三方库

  • 1 打开Podfile, 找到不需要的类库, 直接删除该类库信息, 或者前面加#注释掉
    比如要删除AFNetworking库 ,直接去掉Podfile中第五行信息 pod ‘AFNetworking’, ‘~> 3.1.0’
    删除AFN库.png

  • 2 打开终端cd到当前项目的根目录下重新执行

    pod update --no-repo-update
    
  • 3 更新完成就删除成功了

注意: 删除一些三方库后编译可能会报错: library not found for -l 库名
解决:
在Build Settings中搜索Other Linker Flags,去掉-l”库名”。
(有时不管用,应该是cocoapods的版本问题)

第六, Cocoapods降低版本及卸载

一. 移除pod组件
1.这条指令会告诉你Cocoapods组件装在哪里 :
which pod
2.你可以手动移除这个组件 :
sudo rm -rf 路径

二. 移除 RubyGems 中的 Cocoapods程序包
Q: RubyGems是什么?
A: RubyGems(简称 gems)是一个用于对 Ruby组件进行打包的 Ruby 打包系统。 它提供一个分发 Ruby 程序和库的标准格式,还提供一个管理程序包安装的工具。
1.查看gems中本地程序包
gem list
2.移除程序包
sudo gem uninstall cocoapods -v 要移除的版本号
3.安装指定版本的Cocoapods
sudo gem install cocoapods -v 要安装的版本号


跳过pod setup快速安装

有不少同学执行pod setup这一步, 感觉很慢…..

大约要下载200M的文件,偏偏下载速度出奇的慢,本人保持在30K/S,大约2个小时,关键是没有任何进度条显示,就这样傻乎乎的卡死在这里

一句 pod setup 卡你2个小时,前提还是你安装没有错,如果错误,又要重新2小时.

怎么能如此浪费时间呢?

前面说了,pod setup 这条命令是将Github上的开源库都托管都安装Podspec索引安装到到本地.

简单说就是下载一个包,到本地,也就是这个东西

路径.png

如果你同事电脑上有安装好,你其实可以从你同事电脑上拷贝过来,直接放到该路径就OK了.

如果你身边没有装好的CocoaPods的朋友,可以访问这个链接

https://github.com/CocoaPods/Specs (github所有的第三方开源库的Podspec文件都托管在这里,这也是你pod setup所要下载的).

选择Download ZIP,用你的浏览器或者迅雷什么的,什么下载快用什么,分分钟下载完目前为111.3M(随着开源库的壮大,会慢慢变大).

解压后为这个样子

解压后改为master.png

对比上图,Specs-master改名为master 放在 ~/.cocoapods/repos 路径即可.

~/.cocoapods/repos 这个路径是在执行 pod setup生成的,所以电脑无法前往此路径是,建议先pod setup下,然后关闭掉即可生成路径.

还有就是,FQ,会很快下载,也就是挂个VPN.