CocoaPods的安装和使用详解

部分转载自 “史上最详细的CocoaPods安装教程-布布扣-bubuko.com

到底什么是CocoaPods?

CocoaPods是iOS开发中最常用的管理第三方开源类库的管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。

为什么要使用CocoaPods

Cocoapods的好处体现在两个方面。
1.通常在引用第三方库的时候要完成各种s不同的配置,添加多种框架,但是在使用了CocoaPods后,她会自动帮我们做这些配置。
2.使用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

配置Ruby环境

因为安装CocoaPods时我们要访问cocopods.org,该网站需要翻墙所有特别慢,所以要用到淘宝的Ruby镜像来访问该网站。

打开终端 输入
gem sources --remove https://rubygems.org/
会停顿一会,等有了反应再输入
gem sources -a https://ruby.taobao.org/
为了验证你的Ruby镜像是否是taobao,输入以下命令
gem sources -l
在终端出现以下命令说明到现在你已经成功一半了!
*** CURRENT SOURCES ***

https://ruby.taobao.org/

接下来就可以安装cocoapods了,在终端中输入

sudo gem install cocoapods
这时候会提示你输入密码,在终端输入密码的时候不会有任何字符你能看见,光标也不会动,所以要注意,接下来就是等待了,过程时间会比较长,安装成功如下:

OK!现在我们就已经顺利安装完成了。那么该如何使用呢?我们继续!

使用CocoaPods安装第三方库

使用search命令搜索类库名:(如AFNetworking)
pod search AFNetworking
终端上会出现AFNetworking 的信息,如下:
-> AFNetworking (3.1.0)
   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)
接下来我们就安装这个第三方

建立一个Podfile文件,所有你需要的第三方都放在这里,然后都会下载到Xcode中。每个项目都需要一个Podfile文件,只能有一个。

在终端中cd进你项目所在的目录,然后利用vim命令创建Podfile
vim Podfile
这时候你的项目所在的目录里就会出现Podfile文件,在终端或者Podfile文件中输入:
platform :ios, '7.0'
pod 'AFNetworking', '~> 3.1.0'
保存退出,这时候就已经把你需要的第三方库添加到了Podfile中,当然你要把你需要的所有第三方库名都要加到这里面 ,最后,输入以下命令:(同样是在你的项目目录下)
pod install
这个过程需要下载响应的类库,所以时间和网速有关。等待终端运行完毕,打开你的工程目录,你会看见目录里多了一个后缀名为.xcworkspace的文件,以后用这个工程就可以,以前.xcodeproj就不用了。现在你就已经把你需要的第三方导入到工程中了~ 快打开工程试试吧!cocopods导入的工程引用的头文件的时候要用<>而不是""了!
>#你们以为这就完了吗?当然没有!每次还要去终端输入命令对于我这种懒癌患者怎么能行,当然还有更简便的方法

#####接下来我们就一起来安装一个第三方插件,这个插件是管理插件用的。。。插件中的老大。https://github.com/alcatraz/Alcatraz

![Paste_Image.png](http://upload-images.jianshu.io/upload_images/2195863-99fee08a5bbf78b2.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


![Paste_Image.png](http://upload-images.jianshu.io/upload_images/2195863-2e98710c5a40e884.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

#####看懂了吗?好的~第一个CocoaPods就是我们需要的,我已经下载了所以显示的是REMOVE。


![Paste_Image.png](http://upload-images.jianshu.io/upload_images/2195863-a685ddbead801bb2.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


#####好了!!!  以后你就可以在这里管理cocopods了!接下来的使用您就自己探索吧~   有什么问题可以随时留言交流~~


>#最后祝今天的高考生都能够顺顺利利!!!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容

  • 一、CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNe...
    John_LS阅读 1,433评论 0 2
  • 一早不小心发现有人光顾了此地。 我以为不会有人回来呢,毕竟我什么也没有关注,也没去评论什么的。 谢谢你,能看到,于...
    石头Q晴阅读 109评论 0 0
  • 单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点 适用场景 1. 应用中某个实...
    木木00阅读 362评论 1 3
  • 进到人界以后,英雄们发觉人家温度也不比王者峡谷好多少。 妲己看到了一个约摸二十来岁的年轻人,便施展了魅惑:“这位哥...
    初夏浅忆阅读 208评论 0 1