CocoaPods的使用

这一段做项目会用到一些开源库比如VLC,七牛云存储都是需要用CocoaPods才能运行,索性把这个总结一下

通过CocoaPods,我们可以将第三方的依赖库统一管理起来,配置和更新只需要通过简单的几行命令即可完成,大大的提高了实际开发中的工作效率,使我们的主要精力集中到更重要的事情上去。

1.安装CocoaPods

CocoaPods的使用_第1张图片
我的当前Mac环境

安装CocoaPods之前,先确保本地有Ruby环境,因为CocoaPods运行于Ruby之上,默认情况下,Mac是自带了Ruby环境的,可以通过命令行ruby -v查看当前Ruby的版本

CocoaPods的使用_第2张图片
我的当前Ruby版本

接下来我们就可以通过如下命令安装CocoaPods了。

  
  
  
  
  1. $ sudo gem install cocoapods

输入上述命令后可能会无响应,那是因为你身在天朝,伟大的墙拦住了你的去路,

不过没关系,我们可以通过淘宝的Ruby镜像来访问Cocoapods,在终端输入如下命令将Ruby镜像替换为淘宝的。替换方式如下:

$ gem sources --remove https://rubygems.org/  

//等有反应之后再敲入以下命令  

$ gem sources -a http://ruby.taobao.org/  


要想验证是否替换成功了,可以执行:$ gem sources 1 正常的输出是:

*** CURRENT SOURCES ***   


http://ruby.taobao.org/   


接下来就可以重新运行安装命令来安装CocoaPods了,根据你的网络情况,几秒或十几秒后安装过程就完成了,总的来说,安装过程还是比较简单的

CocoaPods的使用_第3张图片
安装1
CocoaPods的使用_第4张图片
安装2(完成)

2.安装过程中可能遇到的问题

(1)gem版本过老

gem是管理Ruby库和程序的标准包,如果它的版本过低也可能导致安装失败,解决方案自然是升级gem,执行下述命令即可:$ sudo gem update --system 

(2)安装完成后执行pod setup命令时报错

/Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:298:in `to_specs': Could not find 'cocoapods' (>= 0) among 6 total gem(s) (Gem::LoadError)  

    from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:309:in `to_spec'  

    from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_gem.rb:53:in `gem'  

    from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/bin/pod:22:in `

'
这就是路径设置的问题,可以通过执行:$ rvm use ruby-1.9.3-p448  

正确安装后的结果是

CocoaPods的使用_第5张图片
已经正确安装了

3.使用CocoaPods

通过集成Qiniu类库来演示如何使用CocoaPods来做依赖库管理。首先,建立一个xcode工程,命名为CocoaPodsTestDemo

CocoaPods的使用_第6张图片
创建新工程

这里我们要集成Qiniu,可以先通过如下命令来判断其是否支持CocoaPods

$ pod search Qiniu
CocoaPods的使用_第7张图片
 出来的结果

检测完毕后我们来到工程CocoaPodsTest的目录下,新建一个名为Podfile的文件(这里通过命令行创建)

$ vim Podfile 

这个Podfile文件的作用是配置依赖库信息,就是告诉CocoaPods去下载和管理哪些依赖库,文件创建好以后,打开文件并加入如下内容。(vim打开文件后按i进入插入模式,编辑完成后按esc退出编辑模式,接着输入:wq保存并退出文件)


CocoaPods的使用_第8张图片
编辑想要添加的依赖库

这时候,工程目录下就会有一个Podfile文件了,注意必须和.xcodeproj在同一个目录下。接下来就可以使用CocoaPods来安装并管理Qiniu库了,确保命令行当前路径是在CocoaPodsTest目录下,运行如下命令。

$ pod install 

安装完成后会提示如下信息,并且我们的工程目录下会多出一个.xcworkspace结尾的文件,命令行信息绿色部分提醒我们“从此使用CocoaPodsTest.xcworkspace来打开项目”。

CocoaPods的使用_第9张图片
添加成功后的绿色部分

通过CocoaPodsTest.xcworkspace来打开项目,这时,我们的项目工程结构就会变成下图这样,多出一个名为Pods的依赖工程,打开Pods文件夹后,发现Qiniu已经在里面了


CocoaPods的使用_第10张图片
依赖成功后的工程目录

这时候就可以在项目文件中引入QiniuSDK.h了,这时候如果你发现import的时候没有提示QiniuSDK的文件,可以在target-Build Settings下修改“User Header Search Paths”项,新增${SRCROOT}并选择rcursive,如下图。

CocoaPods的使用_第11张图片
更改头路径

设置完成后就可以在文件中直接引用第三方库的文件并使用了。

CocoaPods的使用_第12张图片
可以正常引用第三方库了

到此,新建工程并使用CocoaPods来管理依赖库的过程就完成了,如果是直接使用已有CocoaPods的项目,则需要首先运行一下pod update命令来更新项,然后照样通过.xcworkspace来打开工程。

如果需要依赖多个第三方类库,只需要修改Podfile文件的配置,然后运行pod update命令即可,比如新增一个MBProgressHUD的依赖库,首先执行pod searchMBProgressHUD 查看一下MBProgressHUD的配置信息,修改Podfile文件,在后面增加MBProgressHUD的对应配置信息,然 后运行pod update命令就完成了对MBProgressHUD的集成。

CocoaPods的使用_第13张图片
在这个地方把要添加的添加上
CocoaPods的使用_第14张图片
查询以下该库
CocoaPods的使用_第15张图片
执行更新操作就行了
CocoaPods的使用_第16张图片
最终的效果

如果类库有更新,查看更新配置并执行pod update即可简单完成了,从此从手动更新繁重的体力劳动中解脱出来

简单小结一下:


安装CocoaPods


新建项目并在工程根目录下新建Podfile文件,配置需要管理的第三方库


运行pod install下载安装第三方库




**********************************************************************

1.安装CocoaPods

(1)先确保本地有Ruby环境 CocoaPods运行在Ruby环境之上 mac自带有

查看当前Ruby环境  ruby -v

(2)终端输入如下命令(把Ruby镜像指向taobao,避免被墙)

gem sources --remove https://rubygems.org/

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

gem sources 1

2.下载安装CocoaPods

sudo gem install cocoapods 输入电脑密码

Successfully installed cocoapods-0.39.0 说明已经成功

3.使用CocoaPods

(1)先通过命令看是否支持 pod search AFNetworking

(2)检测完毕后我们来到工程CocoaPodsTest的目录下,新建一个名为Podfile的文件

vim Podfile

这个Podfile文件的作用是配置依赖库信息,就是告诉CocoaPods去下载和管理哪些依赖库,文件创建好以后,打开文件并加入如下内容。(vim打开文件后按i进入插入模式,编辑完成后按esc退出编辑模式,接着输入:wq保存并退出文件)

platform :ios, ‘7.0’

pod ‘AFNetworking’, ‘~> 2.6.3’

(3)这时候,工程目录下就会有一个Podfile文件了,注意必须和.xcodeproj在同一个目录下。接下来就可以使用CocoaPods来安装并管理AFNetworking库了,确保命令行当前路径是在CocoaPodsTest目录下,运行如下命令。

pod install

(4)如果再添加其他的  就 执行pod update


**************************************************************************************************

问题描述:使用cocoapods时,import 找不到头文件。

问题原因:这是因为还没设置头文件的目录。

解决办法:在项目的Target的里设置一下,添加cocoapods头文件目录:目录路径直接写:${SRCROOT}   ,后边选择recursive 。就可以了。

注意:是在 User Header Search Paths 里添加,不是上面的 Header Search Paths.

CocoaPods的使用_第17张图片
设置方法

你可能感兴趣的:(CocoaPods的使用)