CocoaPods简介和安装使用

前言

在iOS项目中使用第三方类库可以说是非常常见的事,但是要正确地配置他们有时候是非常繁琐的事情,幸运的是CocoaPods是一个很好的解决方案。

什么是CocoaPods

CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。

Cocoapods意义体现在两个方面。第一,在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-fno-objc-arc配置等。第二,使用CocoaPods可以很方便地查找新的第三方库,这些类库是比较“标准的”,而不是网上随便找到的,这样可以让我们找到真正好用的类库。

接下来我们将介绍CocoaPods的使用。

CocoaPods的核心组件

CocoaPods是用Ruby写的,并划分成了若干个Gem包。

CocoaPods在解析执行过程中最重要的几个包的路径分别是:CocoaPods/CocoaPods、 CocoaPods/Core和 CocoaPods/Xcodeproj。

CocoaPods / CocoaPod:这是面向用户的组件,每当执行一个pod命令时,这个组件将被激活。它包括了所有实用CocoaPods的功能,并且还能调用其他gem包来执行任务。

CocoaPods / Core:Core gem提供了与CocoaPods相关的文件(主要是podfile和podspecs)的处理。

Podfile:该文件用于配置项目所需要的第三方库,它可以被高度定制。本文中我们主要在这里做动作。

Podspec:该文件描述了一个库将怎样被添加进工程中。.podspec文件可以标识该第三方库所需要的源码文件、依赖库、编译选项,以及其他第三方库需要的配置。

CocoaPods / Xcodeproj:这个包负责处理工程文件,它能创建以及修改.xcodeproj文件和.xcworkspace文件。它也可以作为一个独立的包使用,当你要编写修改项目文件的脚本时,可以考虑使用CocoaPods/Xcodeproj。

Cocoapods安装步骤
1.升级Ruby环境

sudo gem update --system

如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境

2.安装CocoaPods时我们要访问cocoapods.org,用淘宝的RubyGems镜像来代替官方版本,执行以下命`

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

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

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

为了验证你的Ruby镜像是并且仅是taobao,可以用以下命令查看:

$ gem sources -l

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

*** CURRENT SOURCES ***

http://ruby.taobao.org/

上面的命令,有时试了会没有效,请参考淘宝网的https://ruby.taobao.org

$ gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/
$ gem sources -l
*** CURRENT SOURCES ***

https://ruby.taobao.org
# 请确保只有 ruby.taobao.org
$ gem install rails

3.安装Cocoapods,在终端输入命令(10.11以上,请参考第4点)

$ sudo gem install cocoapods

等上十几秒钟,CocoaPods就可以在你本地下载并且安装好了,不再需要其他设置。
这里写图片描述

4.10.11以上,上面的命令是不生效了,因为10.11把cocoapods直接干掉了

sudo gem install -n /usr/local/bin cocoapods

再加一句,完美解决

sudo xcode-select --switch /Applications/Xcode.app

在终端中输入如下命令来完成安装:

//将 CocoaPods Specs repository复制到你电脑上~/.cocoapods目录下`这里写代码片`
pod setup

它需要一点时间来完成,你等就是了
如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup
命令如下:

pod repo remove master  
pod setup

完毕之后这个文件夹大概有 100多M,需要花费比较多时间,请耐心等待。
到这里你已经成功安装了CocoaPods

CocoaPods的使用
1.使用search命令搜索类库名

$ pod search AFNetworking

得到结果如下图:
这里写图片描述

从这个图上,我们看到AFN有好多版本,最新的版本是2.6.0.

需要在工程中创建一个Podfile文件,
2.打开xcode,新建一个工程,工程名为CocoapodsSample。

使用命令cd,cd后面跟的是工程目录名,可以直接拉进来,
这里写图片描述
回车后,输入命令创建Podfile文件

$ touch Podfile

这里写图片描述
我们可以看到,在根目录下,多了一个Podfile文件
这里写图片描述

3.使用vim编辑podfile文件,使用命令

$ vim Podfile

然后在Podfile文件中输入以下文字:

platform :ios, ‘7.0’
pod “AFNetworking”, “2.5.0”

这两句文字的意思是,当前AFNetworking支持的iOS最高版本是iOS 7.0, 要下载的AFNetworking版本是2.5.0。

在编辑完后按 esc,然后按”:”,这个时候输入wq保存退出。
这里写图片描述

4.这时候,你就可以利用CocoPods下载AFNetworking类库了。还是在终端中的当前项目目录下,运行以下命令:

$ pod install 

安装成功后,如下图:
这里写图片描述

这个时候,会看到多了一个.xcworkspace工程,以后打开项目就用 CocoapodsSample.xcworkspace 打开,而不是之前的.xcodeproj文件。
这里写图片描述

5.打开 CocoapodsSample.xcworkspace 工程,你会惊喜地发现,AFNetwoking已经成功导入项目了。

现在,你就可以开始使用AFNetworking.h啦。可以稍微测试一下,在你的项目任意代码文件中输入:

#import "AFNetworking.h"

//或者

#import <AFNetworking.h>

然后编译,看看是否出错。如果你严格按照小编上述的步骤来,是不可能出错的啦。

这里写图片描述

另:

如果有一些包已经存在了,或者我们更改了Podfile里面的版本,可以使用以下命令更新

$ pod update

关于Podfile文件编辑时,第三方库版本号的各种写法:

pod ‘AFNetworking’      //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’,  ‘2.0//只使用2.0版本
pod ‘AFNetworking’, ‘>2.0//使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0//使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0//使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0//使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2//使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1//使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0//高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

博主在安装时遇到了这种情况:
出现library not found for -lPods-AFNetworking这个报错, 来自于我从git上面把我项目直接Download下来的,我的项目里面用了CocoaPods的,现在工程里面是找不到的,所以,报出了这个错误.

为了让大家更清晰,可以直接看下面的图片.
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

上面第一张图片Xcode提示报错的原因,我们可以看第二张,第三张图片就知道,主要是项目里面少了xcworkspace文件.

现在我们明白出现这个报错的原因,那解决方法,也自然也知道了,就是添加xcworkspace文件,那么我们怎么添加了,请看下面的步骤:

第一步,打开终端.输入ls -a命令

(我的工程现在放在根目录下,如果你在桌面,先输入cd Desktop/命令,然后再输入ls -a命令)

第二步,输入cd 然后空格输入你的工程所在的文件夹名.



第三步,也还是输入ls -a命令



第四,输入vim podfile命令,然后Enter键

可以看到里面有AFN.,如果没有,我们添加进去怎么添加了?详见我的博客http://blog.csdn.net/zuoyou1314/article/details/40378247

 第五步,在按“:”,这个时候输入wq,点击回车,保存并退出.





 第六步,输入pod install命令,然后Enter键



   第七步, 看到Analyzing dependencies 说明已经好了,在往工程里面安装xcworkspace文件.可是需要等好久.那么我们可以输入ctrl+c先暂停.



 第八步,最后输入pod install --verbose --no-repo-update 命令,然后出现下面的图片,就成功了,解决问题了.
 注:博主采用了上面的八步,尝试好几次都没有解决,最后无奈删除了项目中的podfile相关的所有文件,重新配置所有的信息,最后成功解决了问题.
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值