一、什么是CocoaPods?

前言: 思考如何引入一个第三方框架。 例如: 百度地图SDK、友盟、ShareSDK、 信鸽推送等。

  1. 从github或某处下载第三方SDK
  2. 工程中导入所需要的SDK的文件 .a 或 .framework
  3. 添加SDK文件所依赖的系统的.framework。比如:
    需要导入SystemConfiguration.framework、CoreLocation.framework、UIKit.framework、libsqlite3. dylib(Xcode 7.0下是tbd文件)等很多系统库。
  4. 有可能还需修改-ObjC、修改Objective-C++
  5. 如果SDK更新了, 我们还需要把这个SDK移除掉, 再拖入一次

正如上所述,大家如果要使用第三方的SDK,需要重复以上的步骤。如此麻烦又浪费时间, 并且都是重复性的操作,并没有任何营养。因此, 如果想避免上述重复性的操作就可以使用CocoaPods这个工具。

CocoaPods 是一个第三方库依赖管理工具。使用一行终端命令即可达到引入第三方库的目的。CocoaPods的使用方式非常简单。

二、CocoaPods安装前准备

CocoaPods使用Ruby语言编写而成。因此需要Ruby的环境, 庆幸的是OS X已经集成了Ruby环境。我们所需要的做的就是通过gem去安装CocoaPods即可。

首次安装CocoaPods之前,Ruby默认源在墙外, 因此我们需要修改下Ruby默认使用的源:

1.查询Ruby的源

gem source -l

查询结果如下:

*** CURRENT SOURCES ***

https://rubygems.org/

查到的这个源是在墙外, 并且淘宝为我们提供了对应的源链接,因此我们需要先移除源链接, 再添加淘宝的源:

2.移除Ruby的源

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

移除结果如下:

http://rubygems.org/ removed from sources

3.添加Ruby的源(最近做了修改, 改为了https)

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

添加结果如下:

https://ruby.taobao.org/ added to sources

对源的操作完成后, 就可以安装CocoaPods了。

三、CocoaPods安装

运行以下命令, 即可实现CocoaPods的安装

sudo gem install cocoapods

运行之后需要输入电脑的密码, 并且没有密码输入的位数提醒。输完密码就进行安装了,安装过程可能会很慢,耐心等待。

上述命令安装完成后,输入以下命令, 进行Cocoapods的建立

pod setup

如果上述命令运行, 皆无错误即完成了CocoaPods的安装!

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

xcrun找不到Xcode

xcrun: error: active developer path
("/Applications/Xcode.app/Contents/Developer/") does not exist, use \xcode-select --switch path/to/Xcode.app\ to specify the Xcode that you wish to use for command line developer tools (or see \man xcode-select\)

运行以下命令, 让xcrun的运行路径找到对应的Xcode

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

四、CocoaPods的使用

1. 创建一个需要使用CocoaPods的工程, 并在工程目录下创建Podfile文件

cd /Users/QCL/Desktop/CocoaPods
pod init

创建完成如下图中, 会出现Podfile文件

创建完Podfile
2.编辑Podfile文件

open -a Xcode Podfile

Podfile init

其中#为注释部分

打开后, 在 target 'CocoaPods' do 与 end 之间输入你想导入的框架, 我们以AFNetworking为例:

target 'CocoaPods' do
pod 'AFNetworking'
end

3.执行cocoapods的安装操作

同样也是要在工程目录下
执行以下命令:

pod install

等其执行完毕,即可完成第三方库的安装
其中还可以调用pod update方法, 也可以达到第三方库安装的目的, 并且会更新版本

在pod install或者pod update过程中会执行podspec索引的更新,需要等待很久,因此为了提升速度可以执行如下命令, 关掉索引的更新

pod install --no-repo-update

并且在安装过程中, 我们不知道cocoapods做了什么, 还可以添加一个参数,用来提示我们,cococapods做了哪些操作

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

安装完成后, 工程目录下会多出一个白色的文件,如下图:

通过CocoaPods安装完第三方后

之后再打开工程,就用白色的工程文件打开,不再使用蓝色的工程文件。

打开之后,工程的目录层级如下图:

打开工程后

其中Pods工程目录是用来存放第三方库和配置文件的,上面的CocoaPods依旧是我们的工程文件, 在它之中,我们可以继续正常的编写代码。
为了验证是否安装成功, 我们可以在AppDelegate.m中引入我们所要使用的第三方库的头文件,如引入AFNetworking

#import <AFNetworking.h>

这里需要注意的是, 以后再引入第三方框架,要当系统框架去引入用\#import <框架头文件.h>

4.pod搜索功能

CocoaPods上的大部分第三方框架均来自于GitHub, 因此数量也很庞大,记名字是很不明智的,因此,我们可以选择通过搜索来找到自己想要寻找的第三方框架。
pod search 框架关键字, 如下:

pod search sdweb

通过搜索命令, 搜索到的内容如下图:

搜索结果

然后把你想要的框架的名字, 复制到Podfile文件中即可,Podfile文件中的第三方可以有多个, 需要几个,就填入几个,CocoaPods会全部帮你下载下来。

至此, 就完成了CocoaPods的创建和使用。

CocoaPods的使用(一) 安装的更多相关文章

  1. CocoaPods 的简单快速安装方法

    CocoaPods 的简单快速安装方法(Setting up CocoaPods master repo 卡着不动,是因为淘宝镜像已经不能用了. 一.git clone方法安装cocoapods 镜像 ...

  2. iOS 开发:CoCoapods的使用和安装

    CocoaPods的使用和安装 一.什么是CocoaPods? 前言: 思考如何引入一个第三方框架. 例如: 百度地图SDK.友盟.ShareSDK. 信鸽推送等. 从github或某处下载第三方SD ...

  3. 最新版CocoaPods的使用与安装-以导入ReactiveCocoa框架为例

    一.什么是CocoaPods?前言: 思考如何引入一个第三方框架. 例如: 百度地图SDK.友盟.ShareSDK. 信鸽推送等.从github或某处下载第三方SDK工程中导入所需要的SDK的文件 . ...

  4. iOS中 CocoaPods Mac App的安装和使用 韩俊强的博客

    CocoaPods Mac App的安装和使用 CocoaPods桌面应用版下载地址:https://cocoapods.org/app打开应用会提示你是否安装命令行工具,选择install就也可以在 ...

  5. CocoaPods学习系列1——安装和常规使用

    CocoaPods是一个Github上的开源项目,目前已经成为iOS开发过程中标准的依赖库管理器,提供了一种对第三方类库简单优雅的集成和管理方案. 其工作原理,是将第三方类库统一管理到一个名为Pods ...

  6. CocoaPods的使用及安装

    本文转自:http://www.jianshu.com/p/6e5c0f78200a 一.什么是CocoaPods CocoaPods是iOS项目的依赖管理工具,该项目源码在Github上管理.开发i ...

  7. CocoaPods介绍。如何安装Ruby环境,如何下载和安装CocoaPods?

    CocoaPods介绍? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其 ...

  8. CocoaPods -- ios项目中安装和使用CocoaPods

    CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而 ...

  9. CocoaPods Mac App的安装和使用

    CocoaPods桌面应用版下载地址:https://cocoapods.org/app打开应用会提示你是否安装命令行工具,选择install就也可以在命令行使用Pod了.省去了上面的步骤们,方便快捷 ...

随机推荐

  1. 20172306《Java程序设计》第五周学习总结

    20172306 2016-2017-2 <Java程序设计>第五周学习总结 教材学习内容总结 第五章主要学习了if以及while的语句的运用 运算符:== 代表相等,是两个之间的内存地址 ...

  2. PID参数调节口诀

    参数整定找最佳, 从小到大顺序查. 先是比例后积分, 最后再把微分加. 曲线振荡很频繁, 比例度盘要放大. 曲线漂浮绕大弯, 比例度盘往小扳. 曲线偏离回复慢, 积分时间往下降. 曲线波动周期长, 积 ...

  3. Spring MVC 数据绑定和表单标签库

    数据绑定是将用户输入绑定到领域模型的一种特性.作用是将 POJO 对象的属性值与表单组件的内容绑定. 数据绑定的好处: 1. 类型总是为 String 的 HTTP 请求参数,可用于填充不同类型的对象 ...

  4. Snownlp

    from snownlp import SnowNLP text='宝贝自拍很帅!!!注意休息-' s=SnowNLP(text) #分词print(s.words) #词性for tag in s. ...

  5. 关于传统项目打成war包的的分析

    技术在不断的革新,以前的项目没有jar管理工具时,都是手动将依赖的jar拷贝到项目之下,然后Build Path,之后Maven出现了,出现了jar包中央仓库,所有的jar包资源集中在这里,免去频繁去 ...

  6. 【转】VxWorks中高精度实时时钟的实现及C语言汇编混合编程

    最近一个项目中需要在VxWorks下使用一个高精度实时时钟,要求精度为1ms,溢 出时间大于5小时.VxWorks提供系统时钟,该时钟在操作系统启动后开始计数,精度为1个tick,可以通过tickGe ...

  7. DHT

    DHT(Distributed Hash Table,分布式哈希表)类似Tracker的根据种子特征码返回种子信息的网络.DHT全称叫分布式哈希表(Distributed Hash Table),是一 ...

  8. 【Web】Nginx Rewrite规则

    Rewrite介绍 Rewrite主要的功能就是实现URL的重写,Nginx的Rewrite规则采用Pcre,perl兼容正则表达式的语法规则匹配,如果需要Nginx的Rewrite功能,在编译Ngi ...

  9. canvas绘图实现浏览器等待效果

    一:创建画布 <canvas width="600" height="600" id="canvas" style="bor ...

  10. 2018.11.07 codeforces559C. Gerald and Giant Chess(dp+组合数学)

    传送门 令f[i]f[i]f[i]表示对于第iii个棋子,从(1,1)(1,1)(1,1)出发到它不经过其它棋子的方案数. 于是我们假设(h,w)(h,w)(h,w)有一个棋子,求出它的fff值就可以 ...