一、什么是CocoaPods?前言: 思考如何引入一个第三方框架。 例如: 百度地图SDK、友盟、ShareSDK、 信鸽推送等。从github或某处下载第三方SDK工程中导入所需要的SDK的文件 .a 或 .framework添加SDK文件所依赖的系统的.framework。比如:需要导入SystemConfiguration.framework、CoreLocation.framework、UIKit.framework、libsqlite3. dylib(Xcode 7.0下是tbd文件)等很多系统库。有可能还需修改-ObjC、修改Objective-C++如果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 sources3.添加Ruby的源(最近做了修改, 改为了https)gem source -a https://ruby.taobao.org/添加结果如下:https://ruby.taobao.org/ added to sources对源的操作完成后, 就可以安装CocoaPods了。

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

sudo gem install cocoa pods

运行之后需要输入电脑的密码, 并且没有密码输入的位数提醒。

输完密码就进行安装了,安装过程可能会很慢,耐心等待。

上述命令安装完成后,输入以下命令,

进行Cocoapods的建立

pod setup

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

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

xcrun找不到Xcodexcrun: 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的运行路径找到对应的

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

四、CocoaPods的使用

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

cd /Users/QCL/Desktop/CocoaPods

pod init

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

Pod file文件的创建

2.编辑Podfile文件

open -a Xcode Podfile

打开Podfile后如下图所示:

Podfile文件原型

其中#为注释部分打开后, 在 target 'CocoaPods' do 与 end 之间输入你想导入的框架, 我们以ReactiveCocoa为例:

target 'CocoaPods' do

pod 'ReactiveCocoa'

end

另外加上use_frameworks!

如图所示:

Podfile文件编辑

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这里需要注意的是, 以后再引入第三方框架,要当系统框架去引入用

\#import <框架头文件.h>

4.pod搜索功能

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

pod search 框架关键字, 如下:

pod search ReactiveCocoa

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

ReactiveCocoa目录搜索结果

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

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

文/zhen1234(简书作者)
原文链接:http://www.jianshu.com/p/5196f27c9604
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

最新版CocoaPods的使用与安装-以导入ReactiveCocoa框架为例的更多相关文章

  1. iOS 最新版 CocoaPods 的安装流程

    iOS 最新版 CocoaPods 的安装流程1.移除现有Ruby默认源$gem sources --remove https://rubygems.org/2.使用新的源$gem sources - ...

  2. 最新版 CocoaPods 的安装流程

                                       iOS 最新版 CocoaPods 的安装流程     1.移除现有Ruby默认源 $gem sources --remove h ...

  3. 最新版CocoaPods的安装和使用以及版本升级遇到的问题

    CocoaPods的下载及安装 mac系统已经默认安装好Ruby环境,如果你不确定自己系统中是否有Ruby的,可以在终端中输入命令行:ruby -v查看当前ruby版本.如图:  确定以后,接下来就可 ...

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

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

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

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

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

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

  7. CocoaPods的使用(一) 安装

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

  8. 最新版chrome浏览器如何离线安装crx插件?(转载)

    原文链接:https://newsn.net/say/chrome-crx-offline.html mac新版chrome开启离线插件安装 对于mac新版chrome,注意,大家一定要按照顺序来.m ...

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

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

随机推荐

  1. 《Node.js开发实战详解》学习笔记

    <Node.js开发实战详解>学习笔记 ——持续更新中 一.NodeJS设计模式 1 . 单例模式 顾名思义,单例就是保证一个类只有一个实例,实现的方法是,先判断实例是否存在,如果存在则直 ...

  2. Product of Array Except Self

    Given an array of n integers where n > 1, nums, return an array output such that output[i] is equ ...

  3. 清北学堂2017NOIP冬令营入学测试P4749 F’s problem(f)

    时间: 1000ms / 空间: 655360KiB / Java类名: Main 背景 冬令营入学测试 描述 这个故事是关于小F的,它有一个怎么样的故事呢. 小F是一个田径爱好者,这天它们城市里正在 ...

  4. 学习C++.Primer.Plus 6 分支语句和逻辑操作符

    ||. &&操作符是一个顺序点 < 操作符从左向右结合 ; < age < )//17<age为true, = 1,肯定 < 27.所以为整个条件为tru ...

  5. 如何在 ie6 中使用 "localStorage"

    好吧,我只是个标题党,ie6 下根本无法使用跟 h5 沾边的 localStorage.今天要向大家介绍的是 ie 特有的 userData 的存储方式,并且对它进行封装,使得不支持 localSto ...

  6. 【开源】LLMAnimator 60多种动画让你的应用动起来

    github:  https://github.com/brookshi/LLMAnimator ,欢迎star/fork 之前做android的时候需要给应用加些动画效果,在github上找到这个库 ...

  7. JQuery功能查询页

    JQuery在前端开发中已经是常用的不能再常用的库了.最近的项目中使用到了JQuery,我第一次接触它的时候为了学习,把常用的操作指令用比较小的字体写在一页word上,打印出来贴在桌子上,用来让自己时 ...

  8. Linux进程间通信之信号量

    春节过去了,真的过去一年了.在公司待了快一年了.2016希望自己变得越来越好. ps:上面那句话是年前写的,中间隔了那么久,自己也变懒了. 一.信号量 1,信号量本质是一个计数器,控制访问共享资源的最 ...

  9. MATLAB如何定义函数

    自定义函数的途径:M文件函数(M file function)在线函数(Inline Function)匿名函数(Anonymous Function)1.M文件函数范例function c=myad ...

  10. ubuntu中安装VMWare tools

    在进入VMware Workstation之后找到虚拟机然后选择安装VMWare Tools 在下载的安装包中找到linux.iso,比如我的是C:\Program Files (x86)\VMwar ...