一、CocoaPods介绍以及好处

  • CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具,该项目源码在Github上管理。通过 CocoaPods,可以很方便的查找到新的第三方库。CocoaPods的官网是这么描述它自己的”The best way to manage library dependencies in Objective-C projects”。
  • 手动导入第三方开源库时,我们还需要在工程中配置一些文件,设置一些参数,有可能导入的库中缺少文件,这时我们要报错误时真的很难发现,而且第三方库升级时,我们又要手动的去添加升级之后的库,认为因素有时总会出现一些无可避免面的错误,有时你还发现不了,这让人很苦恼。

二、CocoaPods原理

在使用CocoaPods后,我们只需要把用到的开源库放到一个名为Podfile的文件中,然后执行pod install.Cocoapods就会自动将这些第三方开源库的源码下载下来,并且为我们的工程设置好响应的系统依赖和编译参数。

1、Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a 文件即可。

2、对于资源文件,CocoaPods提供了一个名为Pods-resources.sh的bash脚本, 该脚本在每次项目编译的时候都会执行,将第三方库的各种资源文件复制到目 标目录中。

3、CocoaPods通过一个名为Pods.xcconfig的文件来在编译时设置所有的依赖和 参数。

三、CocoaPods安装

1、在安装CocoaPods之前,首先要在本地安装好Ruby环境。然后输入一行命令

 
$ sudo gem install cocoapods

这时你会发现报错了

2、在终端中敲入这个命令之后,会发现半天没有任何反应。原因无他,因为那堵墙阻挡了cocoapods.org。国内不能直接安装,只能通过VPN或淘宝的Ruby镜像来访问。在这里,我们利用淘宝的Ruby环境来安装,继续输入以下命令:

$ gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
$ gem sources -a http://ruby.taobao.org/ 
输完以上两个命令时,你会发现还是报错,
 

报错:ERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why: Unable to download data from http://ruby.taobao.org/ - bad response Not Found 404 (http://ruby.taobao.org/specs.4.8.gz)

这就是问题关键所在了,本博主在升级Xcode7之后,报这个错误,我尝试各种办法,就是没查找出原因,最后才发现

淘宝的 ruby源已经改为了 https了(一定要注意 啊),所以要在这里输入命令:

$ gem sources -a https://ruby.taobao.org/

3、这时在输入命令,查看状态,发现成功的

$ gem sources -l

只有在终端中出现下面文字才表明你上面的命令是成功的:

*** CURRENT SOURCES ***

https://ruby.taobao.org/

4、验证一下安装成功,输入命令:(我看有些博客 还需要 设置cocoapods(一定要执行$ sudo setup),我没执行过。

 
$ pod search AFNetworking

你会看到一下信息,AFNetworking 的各个版本信息


四、CocoaPods使用

1、创建iOS项目,找到项目目录(xxx.xcodeproj)的同级目录

2、(1)在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行:
 
$ vim Podfile 
 
(2)“i”键进行podfile文件的编辑,退出编辑时先按下ESC键,再 执行 :wq ,Enter键即可。

(3)然后在Podfile文件中输入以下文字:

   platform :ios, '8.0'pod "AFNetworking", "~> 3.0"

这段文字不是凭空生成的,可以在AFNetworking的GitHub页面找到。这两句文字的意思是,当前AFNetworking支持的iOS最高版本是iOS 8.0, 要下载的AFNetworking版本是3.0。注意字符不能出错,直接从GitHub上的Podfile处复制过来(切忌字符不能有错)
 
 
本博主写错了字符,单引号时以及多添了第二行的代码:
 
 
 
报错的信息:
 
 
 
(4)修改之后再运行一下命令
 $ pod install
 
(5)这时查看一下工程文件名目录,会发除了之前的Podfile文件之外,还现多了另外一个文件“Podfile.lock”和一个文件夹“Pods”
 

3、打开项目工程时,不再是之前的xx.xcodeproj了,而是打开xx.xcworkspace工程,然后导入

#import <AFNetworking.h>
或者
#import "AFNetworking.h"都是可以的。

目前来说,使用第三方开源库,后期更新导入升级之后的库容易出错,目前使用CocoaPods管理第三方库我没出现过错误,不过我有两同学遇到过错误,是什么错误我也没去细问,有问题了再向他们询问吧。

在网上关于CocoaPods的安装和使用一大把的文章,在这里我只推荐两篇我觉得不错的文章,供大家参考:

http://blog.csdn.net/iunion/article/details/17010267

http://blog.csdn.net/chen505358119/article/details/47778347

http://www.jianshu.com/p/6e5c0f78200a

iOS-Xcode7安装CocoaPods相关推荐

  1. 猫猫学iOS之安装cocoapods

    啥事cocoa pods 不解释,自己看这里只有一次安装流程,猫猫的安装流程. 打开命令行,我用的是ruby安装,mac自带ruby,啥是ruby,不解释,因为开始我也不懂,就当他是命令行. 1:安装 ...

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

    http://code4app.com/article/cocoapods-install-usage iOS 最新版 CocoaPods 的安装流程 1.移除现有Ruby默认源 $gem sourc ...

  3. IOS安装CocoaPods完整流程

    作为一个底层系统大菜鸟,又搞过几年ios来说,安装一个CocoaPods是一件蛋痛的事~  说懂又懂,说不懂又不懂.    因为安装过程比较复杂,步骤较多,而网上教程又比较零散,而且有一些是扯蛋的,所 ...

  4. Mac安装ruby环境及Xcode安装cocoapods整体流程--ios引用第三方库的环境准备

    发文原由:ios刚用来开发不久,需要在开发时引用第三方库,百度查找了资料,需要先安装ruby环境,再进行cocoapods安装 一.mac安装ruby环境 (引用博客–https://www.cnbl ...

  5. iOS安装CocoaPods的详细步骤

    之前的文章没有说明如何安装CocoaPods,现在向大家一一说明: 1.升级ruby环境 应该输入:$ sudo gem update --system sudo是强制升级 2.更换ruby镜像 首先 ...

  6. ios cocopods 安装使用及高级教程

    CocoaPods简介 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如Java语言的Maven,nodejs的npm.随着iOS开发者的增多,业界也出现了为iOS程序提供依赖管理的工具,它的 ...

  7. 最新 macOS Sierra 10.12.3 安装CocoaPods及使用详解

    cocoapods官网:https://guides.cocoapods.org 一.什么是CocoaPods 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven, ...

  8. XCode中安装cocoapods步骤

    Ruby是一种功能强大的面向对象的脚本语言 Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/ )源来查找.安装.升级和卸载软件包,非常的便 ...

  9. [cocoapods]安装cocoapods

    如果你的电脑已经安装过cocoapods了,但是不知道怎么用,请直接跳转到第8步 在安装之前,我们先来了解什么是cocoapods 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONK ...

最新文章

  1. mybatis 大于小于转义_10 HTML5特性、转义字符和注释
  2. Python学习记录day4
  3. TypeScript里的高阶函数-返回函数的函数,以及对应的JavaScript代码
  4. php把时间戳改为时间格式,php怎么把时间格式转换为时间戳?
  5. 为你的 Swift Packages 命名
  6. 手把手教你linux系统安装和完美配置
  7. 三星typec转接耳机没反应_1MORE最新双旗舰无线降噪耳机评测:国货强于外夷的希望...
  8. python中print怎么用_python中print的使用方法
  9. 记录Windows11系统出现的一次蓝屏收集错误信息重启的问题
  10. BZOJ 4698 Sdoi2008 Sandy的卡片
  11. 手机贴图压缩技术标准及作用
  12. html 英文逗号,英语写作中不可小觑的五大错误 逗号别乱用
  13. 操作系统磁盘调度算法
  14. 【PyTorch深度学习项目实战100例】—— 基于CNN实现书法字体风格识别任务 | 第62例
  15. 三维建模教程——概念版摩托车
  16. 【人工智能】AI 公司:DeepMind 公司传
  17. H265(HEVC)视频下载 测试专用
  18. 从零开始之uboot、移植uboot2017.01(五、board_init_f分析)
  19. FTP文件服务器的搭建
  20. Python编程遇问题,文科生怎么办?

热门文章

  1. 具体数学--(无限数列和)
  2. linux dns proxy,Linux下解决DNS污染
  3. SQL MID() 函数
  4. 大仙教学 Spring Security
  5. 数据流量包-Python辅助分析脚本
  6. 想接触 a16z,Google,京东以及区块链大咖?一场科技大会满足你
  7. 网站 手机版 电脑版 相互切换
  8. 酷比魔方i7 安装android x86 无线调试
  9. Web前端期末大作业-卫浴商店公司网页设计(HTML+CSS+JS)
  10. 区块链技术在医疗保健领域的应用展望