CocoaPods的使用详解
CocoaPods是什么
当我们开发 iOS 项目时候,会经常使用到第三方类库,并且会使用很多。大家的做法基本上都是到 GitHub 上下载一个一个的类库,然后导入到工程中,并且引入各种的类库,做各种的配置。有时候还要处理 ARC 与 MRC 的问题,很麻烦;还有一种情况,就是当第三方类库出现升级的情况时候,我们还需要删掉旧的,下载新的,再重新导入。
以上问题超级的烦人。。。CocoaPods就是类库管理工具,刚刚提到所有麻烦的操作,CocoaPods都能解决。
安装CocoaPods
安装 CocoaPods 需要本地 Ruby 环境,默认情况下,Mac 自带 Ruby 环境,可以通过在终端
输入命令
ruby -v
查看 Ruby 版本。
由于 Ruby 的淘宝镜像源停止了更新,所以现在使用 CocoaPods 的同学,都请更新到 Ruby China 社区网站下的镜像源,具体方法请参考 Ruby-China.
接下来进行安装,使用如下命令:
sudo gem install cocoapods
OS X 10.11以后,如果继续使用上面的命令,终端会提示如下错误:
解决办法换成了在终端输入以下命令:
sudo gem install -n /usr/local/bin cocoapods
等待执行完毕,看到如下提示,恭喜你,安装完成。
如果遇到其它的安装问题,请自行Google解决吧。
使用CocoaPods
安装已经完成了,下面就来教大家如何使用。
做一个项目,项目中需要使用 SDWebImage,看看如何使用 CocoaPods 进行安装
首先使用如下命令,查看 CocoaPods 是否支持 SDWebImage 类库
pod search SDWebImage
注意圈住的那一行,一会需要使用。这行信息是告诉CocoaPods去下载哪一个第三方类库和它的哪一个版本,是一条配置信息。可以看到下面这些搜索结果,表示SDWebImage是可以的,
下面创建空的项目,然后使用CocoaPods往项目中导入SDWebImage类库:
1>. 创建项目 CocoaPods_Test,保存到桌面
2>. 在终端输入 cd空格
,拖入项目文件夹,回车,进入项目所在的根目录
3>.通过命令行创建Podfile
文件,该文件的作用是配置第三方类库的信息,就是告诉CocoaPods去管理哪些类库
vim Podfile
4>. 接下来,我们就可以使用命令来安装第三方类库了,(确保终端路径在项目根目录)运行如下命令: vim打开文件后,按i
进入编辑模式,输入如下文字:
里面的pod 'SDWebImage', '~> 3.7.1'
就是我们在上面圈住的那一行。
输入完成后按ESC
退出编辑模式,接着输入:wq
,并按回车键进行保存并退出。
上面的操作完成之后,我们可以在项目根目录发现一个没有后缀的Podfile文件,这就是刚刚创建的文件,里面保存了需要使用的第三方类库的信息。(注意:Podfile文件必须和.xcodeproj文件在同一目录下)
pod install
5>. 双击项目中的CocoaPods_Test.xcworkspace
文件来打开项目,你会看到如下目录结构:当我们看到这样的提示,就表示你操作成功:
注意最后一句话:”Please close any current Xcode sessions and use ‘CocoaPods_Test.xcworkspace’for this project from now on”。这就是告诉我们,从现在开始需要使用这个文件来打开项目,而不在是之前的.xcodeproj
我们会发现多了一个Pods的依赖工程,打开Pods文件夹后,发现SDWebImage已经在这里面了。
6>. 现在,我们就可以在想要使用SDWebImage的文件中,引入需要的文件,然后就可以正常使用了。
7>. 到现在为止,你已经学会了如何使用CocoaPods来添加第三方类库。如果我们需要使用多个第三方类库,只需要修改Podfile文件就可以了,如下:
NOTE:怎么样,过程很简单吧。只需要: 1.查询 2.修改Podfile文件 3.安装 即可完成!
其它
当我们想要重新安装CocoaPods的时候,需要卸载这个东西,很简单,只需要执行以下命令即可:
sudo gem uninstall CocoaPods
第三方版本号的各种写法与含义:如果安装了多个版本,选择 All,即可全部卸载!
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的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
CocoaPods的使用详解的更多相关文章
- [ios]安装CocoaPods及使用详解
最新 macOS Sierra 10.12.3 安装CocoaPods及使用详解 http://www.jianshu.com/p/b64b4fd08d3c CocoaPods的安装以及遇到的坑 ht ...
- 最新Mac OS X 10.12.1 安装cocoapods及使用详解
cocoapods官网:https://cocoapods.org 一.什么是CocoaPods 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs ...
- iOS最新Mac OS X 10.11之后 安装cocoapods及使用详解
iOS 最新版 CocoaPods 的安装流程 一.安装方法: 1.移除现有Ruby默认源 gem sources --remove https://rubygems.org/ 为了提高安装的成功几率 ...
- 最新 macOS Sierra 10.12.3 安装CocoaPods及使用详解
一.什么是CocoaPods 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs 的 npm.随着 iOS 开发者的增多,业界也出现了为 iOS 程序 ...
- cocoapods 安装使用详解
http://blog.csdn.net/showhilllee/article/details/38398119 http://www.jianshu.com/p/1222dd6c4271 删除 ...
- CocoaPods详解之(三)----制作篇
CocoaPods详解之----制作篇 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/20067595 转载请注明出处 ...
- CocoaPods详解之(二)----进阶篇
CocoaPods详解之----进阶篇 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/19178709 转载请注明出处 ...
- CocoaPods详解之(一)----使用篇
CocoaPods详解之----使用篇 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/18737437 一.什么是Coc ...
- CocoaPods 详解之----更新篇
CocoaPods 大概是 2011 年出现的开源组件管理工具(目前已支持 Objective-C 和 Swift),近年来普及率越来越高,几乎已是所有 Cocoa 开源项目的标配.另外,很多大点的团 ...
随机推荐
- Keil MDK 无法设置断点【worldsing】
要解决一个问题就怕不知道怎么搜索,或是别人没有遇到过: 同样碰到Keil MDK Debug调试无法设置断点问题,首先来问百度,GOOGLE,一下是我搜索到的结果: 1.keil 不能设置断点,每 ...
- Keil MDK 5.0发布了
从上图可以看出MDK500.EXE (294,308K)分成了两部分,MDK核和software packs.MDK核跟以往一样分成四个部分,编辑器,编译器,包安装,调试跟踪.此版soft ...
- 通过dbcc page来查看表中的数据
--1.先建表 CREATE TABLE test(idd INT NOT NULL,name VARCHAR(10) NULL) INSERT INTO TEST SELECT 1,'abcdefg ...
- Jquery花园
1.在线jquery api:http://hemin.cn/jq/ 2.jquery官网:jquery.com 3.http://www.jqcool.net/ 4.http://www.fron ...
- ECshop模板机制
ECshop模板机制整理 模板机制 近期新项目涉及到ECshop的二次开发,趁此良机正好可以对闻名已久的ECshop系统进行深入了解.要了解一个系统,那么该系统的模板机制就是最重要的一环.相关整理如下 ...
- hadoop安装详解
1.hadoop简介 Hadoop是Apache软件基金会旗下的一个开源分布式计算平台.以Hadoop分布式文件系统(HDFS,Hadoop Distributed Filesystem)和MapRe ...
- zigbee 学习记录之一:资料搜索
先从网络来一段资料吧,在学习过程中慢慢整理资料. <由于zigbee 以cc2530 51单片机为基础,Zstack为源头,比较成熟了,学习和摸索就从Zstack开始吧.没有师傅,就有从网络上大 ...
- centos yum安装mysql
查看有没有安装包 # yum list mysql 安装mysql客户端 # yum install mysql # yum list mysql-server 安装mysql 服务器端 # yum ...
- hdu 5445 Food Problem 多重背包
Food Problem Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5 ...
- iOS开发——UI篇OC篇&不规则排列的图片布局
不规则排列的图片布局 一直在500px上看照片,发照片.以前看它的首页图片展示就只是觉得好看,洋气,也没想过自己在iOS上实现一下.昨天不知怎么的就开始想其中的算法了,现在我把思考的过程在这里贴出来分 ...