CocoaPods的安装和使用教程

看一遍就会的CocoaPods的安装和使用教程

什么是CocoaPods?

CocoaPods是专门为iOS工程提供对第三方库的依赖的管理工具,通过CocoaPods,我们可以更方便地管理每个第三方库的版本,而且不需要我们做太多的配置。直观、集中和自动化地管理我们项目的第三方库。

我们都有这样的经历,当我们添加第三方库的时候,需要导入一堆相关依赖库,更新的时候也要删掉重新导入然后再配置。当我们需要更新某个第三方库的时候,我们又要手动移除该库,导入新的库,然后再配置。这些是很麻烦且没有意义的工作。

当我们开始使用CocoaPods管理第三方库后,我们只需要相当少的配置,其它的一切都交由CocoaPods来管理即可,我们使用起来就更省心了。

安装CocoaPods

1.首先更新gem到最新版本,在终端中输入:$ sudo gem update --system,注意不要把“$”复制上。等待一会儿会看到:

更新gem

2.删除自带的ruby镜像,终端输入:gem sources --remove https://rubygems.org/。

3.添加淘宝的镜像,终端输入:gem sources -a https://gems.ruby-china.org/(原来的淘宝镜像https://ruby.taobao.org/已经不能用了)。

4.可以用gem sources -l来检查使用替换镜像位置成功,结果应该只有https://gems.ruby-china.org/才对。

修改镜像

5.安装CocoaPods,终端输入:sudo gem install cocoapods。

等待一会儿会看到:

安装CocoaPods

6.然后配置下CocoaPods,终端输入:pod setup。

配置CocoaPods

等待过程可能有点长,成功后会看到:

配置成功

到这里CocoaPods就安装好了。

查找第三方库

比如查找MJExtension,终端输入:pod search MJExtension,第一次搜索他需要建索引,等待一会儿就可以了。

建索引中

完成后他会自动进入一个新的页面显示搜索结果,上下滑动查看更多,要退出的话按wq就可以了。以后再搜索就不需要建索引了。

查找结果

引入第三方库到项目中

我先在桌面上新建一个Test项目,然后演示把MJExtension导进去。

刚开始的文件目录是这样的

原始目录.png

1,首先打开终端,cd到Test路径下。

Test

2.然后生成并编辑一个Podfile文件,命令为vim Podfile,要导入的第三方都要在这里面写上。进去后需要先按I键进入编辑状态,写完后按esc,然后按shift+zz(或者先按shift+:,再按wq)就可以保存退出了。下面的动图里面都有。

Podfile的格式大概如下,其中'Test'为你的target的名字。

platform :ios,'8.0'

target 'Test' do

pod 'MJExtension', '~> 3.0.13'

end

3.安装,命令为:pod install。

安装第三方

安装成功之后,就可以去项目里面使用了。现在的项目文件变成了这样

屏幕快照 2016-09-07 23.23.19.png

之前我们一直是双击Test.xcodeproj打开项目,以后我们就要双击Test.xcworkspace打开了,打开后发现项目里面多了红色框的部分,可以看到MJExtension已经被引入了。

多出来的文件

使用第三方

你会发现当引入MJExtension的头文件时,可以#import 或者#import ,但是却不能在输入#import "MJExtension.h"的时候出现提示。虽然强制输入也可以编译通过,但是感觉很不爽。

解决这个问题的办法是在工程的Build Settings搜索Search,然后在User header search paths中添加$(SRCROOT)并选择recursive。

头文件不提示的解决办法

现在就可以提示#import "MJExtension.h"啦。

然后我们就可以在项目里面使用MJExtension的方法啦。

使用MJExtension

增加新的第三方

如果使用过程中我还想添加其他的第三方怎么办,只要在Podfile里面接着添加,然后终端再执行pod install就可以了。

新增第三方

更新CocoaPods中的第三方们。

第三方库们都有人在维护升级,我们需要隔断时间就要更新下我们工程中第三方库的版本。只需要终端输入命令pod update就可以了。

如果遇到pod install或者pod update慢的问题,原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

pod install --verbose --no-repo-update

pod update --verbose --no-repo-update

删除CocoaPods中的某些第三方们。

当我们需要去掉某个第三方库时,只需要在Podfile删除该引入该库的语句,然后执行pod update或者pod install就可以了。

将CocoaPods从项目中删除

如果你在以后的使用过程中不想用CocoaPods了怎么办?很简单,把多出来的东西们都删掉就可以了,不过为了项目正常运行,你需要手动导入已经使用的第三方们哦。

将CocoaPods从项目中删除

升级CocoaPods

升级CocoaPods版本的命令和安装CocoaPods的命令一样,都是sudo gem install cocoapods。

如果老版本升级cocoapods的时候提示Operation not permitted - /usr/bin/xcodeproj,改用命令sudo gem install -n /usr/local/bin cocoapods --pre就可以了。

卸载CocoaPods

卸载CocoaPods的命令是sudo gem uninstall cocoapods

卸载CocoaPods

执行完命令后,最下面打印Successfully uninstalled cocoapods字样就代表已经成功卸载了。

CocoaPods Mac App的安装和使用

CocoaPods桌面应用版下载地址:https://cocoapods.org/app

打开应用会提示你是否安装命令行工具,选择install就也可以在命令行使用Pod了。省去了上面的步骤们,方便快捷的使用CocoaPods。

是否安装命令行工具

现在假如要给一个Test项目加入第三方库

1.选择File-New Podfile from Xcode Project,去选择项目的Project文件。

选择项目

2.填写自动生成的Podfile,并且安装。

Podfile

然后就可以去打开工程了,是不是比命令行简单多了。

注意:Cocoapods.app 删掉并执行命令可能会报错:Unable to locate the CocoaPods.app application bundle. Please ensure the application is available and launch it at least once

错误信息.png

这时候只要执行sudo gem install -n /usr/local/bin cocoapods命令就可以了。

CocoaPods官方使用指南

链接:https://guides.cocoapods.org/

有什么不了解的或者遇到错误可以去这里查看一下。

XCode的CocoaPods插件

CocoaPods-xcode-plugin是一个XCode的插件,可以很方便的在Xcode通过pods安装各种第三方库。前提是终端已经安装好CocoaPods,使用方法大概如下:

CocoaPods插件使用

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

推荐阅读更多精彩内容