CocoaPods安装与使用
CocoaPods简介:
CocoaPods 是什么?
- CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具。利用 CocoaPods,可以定义自己的依赖关系 (称作 pods),并且随着时间的变化,以 及在整个开发环境中对第三方库的版本管理非常方便
CocoaPods 背后的理念主要体现在两个方面
- 在工程中引入第三方代码 会涉及到许多内容。针对 Objective-C 初级开发者来说,工程文件的配置会让 人很沮丧
- 在配置buildphases和linker flags过程中,会引起许多人为因素的 错误
- CocoaPods 简化了这一切,它能够自动配置编译选项
CocoaPods的原理
- 它是将所有的依赖库都放到另一个名为Pods项目中,然后 让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中
- 1、Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a 文件即可。
- 2、对于资源文件,CocoaPods提供了一个名为Pods-resources.sh的bash脚本, 该脚本在每次项目编译的时候都会执行,将第三方库的各种资源文件复制到目 标目录中。
- 3、CocoaPods通过一个名为Pods.xcconfig的文件来在编译时设置所有的依赖和 参数。
CocoaPods安装:
CocoaPods安装
- 更新gem (默认MAC OS X已经安装了gem,但是为了避免安装过程出现错误,所以最好先更新以下gem工具,更新命令如下):
- sudo gem update --system

- sudo gem update --system
- 更新ruby的软件源 (有了gem工具,就可以通过gem去安装CocoaPads,而CocoaPads工具,就是在ruby的软件源中。https://rubygems.org/为国外服务器,http://ruby.taobao.org/是国内服务器。默认CocoaPads是去访问国外服务器的,而天朝访问国外服务器比较慢,所以需要访问国内淘宝服务器上的。)命令如下:
- gem sources --remove https://rubygems.org/
- gem sources -a http://ruby.taobao.org/
- gem sources -l

- 安装CocoaPods
- sudo gem install cocoapods
- 执行完以上操作,CocoaPods安装完成,也仅仅是安装完成。因为cocoaPods是用来集成三方框架的,所以我们还需要把三方框架的说明文件下载下来。第三方框架的说明文件是一个以podspec为后缀的文件,注意:只有带有该文件的第三方框架才支持cocoaPods,不支持cocoaPads的第三方框架还是老老实实的下载吧。如下图:

- sudo gem install cocoapods
- 替换CocoaPods的镜像索引 (目的是为了设置pod仓库,因为pod仓库是用来存储所有三方框架的后缀为podspec的描述文件的,同下载cocoaPods一样,也需要替换下载服务器,从国外服务器转到国内服务器),命令如下:
- pod repo remove master
- pod repo add master http://git.oschina.net/akuandev/Specs.git
- pod repo add master https://gitcafe.com/akuandev/Specs.git
- pod repo update
- 设置 pod 仓库
- pod setup
- 测试
- pod --version
- 更新gem (默认MAC OS X已经安装了gem,但是为了避免安装过程出现错误,所以最好先更新以下gem工具,更新命令如下):
卸载CocoaPods
- sudo gem uninstall cocoapods
CocoaPods使用:
- 使用时需要新建一个名为Podfile的文件

- 终端创建Profile文件:

- 将依赖的库名字依次列在文件中
- 使用时需要新建一个名为Podfile的文件
platform :ios
pod'AFNetworking'

- 另外,可以利用cocoapods-xcode-plugin来安装管理第三方框架,这样就不需要手动创建 Podflie文件。
- 需要运行cocoapods-xcode-plugin并且重启Xcode然后load Bundle
- 注释事项
- 1.利用CocoPods管理类库后, 以后打开项目就用xxxx.xcworkspace 打开,而不是 之前的.xcodeproj文件
- 2.每次更改了Podfile文件,你需要重新执行一次pod update命令。
- 3.CocoaPods在执行pod install和pod update时,会默认先更新一次CocoPods的 spec仓库索引。使用--no-repo-update参数可以禁止其做索引更新操作
pod install --no-repo-update
pod update --no-repo-update
- 如何得知我将要集成的框架是否支持cocoaPods?
- 终端执行pod search xxx 其中xxx为框架名称
- 如果回车后有结果,则说明该框架支持cocoaPods
CocoaPods安装与使用的更多相关文章
- 最新的 cocoaPods 安装方法
经过努力终于发现了最新的 解决cocoaPods安装的办法: taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务 第一步:安装rvm, 不管需不需要升级ruby,rvm可以 ...
- cocoapods安装
什么是cocoapods CocoaPods是一个用来帮助我们管理第三方依赖库的工具.它可以解决库与库之间的依赖关系,下载库的源代码,同时通过创建一个Xcode的workspace来将这些第三方库和我 ...
- iOS 之 Cocoapods安装
进入正题前,先来点前奏:了解cocoapods是某天看一个博客,那时才明白原来写项目不用一个个将三方库拷进项目里啊,惊讶的我是一塌糊涂的啊...(原谅我那时还没进入过正规的IT公司....好多你们自然 ...
- mac 10.11.6,Xcode8下,ruby2.3安装,Cocoapods安装~
适用环境 mac: 10.11.6 Xcode:8.1 命令执行步骤(安装ruby2.3前准备工作) 查看ruby更新源 gem sources -L 删除默认官方或者淘宝,新增 https://g ...
- Mac 下安装ruby,以及CocoaPods安装以及使用网摘
ruby安装网址:https://ruby-china.org/wiki/install_ruby_guide CocoaPods安装和使用教程地址:http://code4app.com/artic ...
- cocoapods安装以及使用,安装过程中ruby版本过低
cocoapods安装以及使用,安装过程中ruby版本过低 字数473 阅读103 评论1 喜欢2 1.打开终端 2.移除现有 Ruby 默认源 $ gem sources --remove http ...
- 2016最新CocoaPods安装和错误解决 + 自己的经验
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px Times; color: #333333; background-color: #fffff ...
- << CocoaPods安装和使用教程 >>github code4app以及cocoachina 苹果官方文档
developer.apple.com 英文搜索各个技术的官方介绍文档, 前提是英文过关 cocoachina ios最新新闻, 信息 code4app上有许多组件 http://www.code4a ...
- 史上最详细的CocoaPods安装教程
虽然网上关于CocoaPods安装教程多不胜数,但是我在安装的过程中还是出现了很多错误,所以大家可以照下来步骤装一下,我相信会很好用. 前言 在iOS项目中使用第三方类库可以说是非常常见的事,但是要正 ...
随机推荐
- poj[3093]Margaritas On River Walk
Description One of the more popular activities in San Antonio is to enjoy margaritas in the park alo ...
- 包含文件函数include与require的区别
include或include_once一般用于动态包含,所谓动态包含就是根据不同条件包含不同文件 require或require_once一般用于静态包含,比如包含一个html文件的头部或者尾部 如 ...
- http协议(四)http状态码
一:http状态码 表示客户端http请求的返回结果.标记服务器端的处理是否正常.通知出现的错误等工作 状态码的类别如下: http状态码种类繁多,大概有60多种,实际上经常使用的只有14种,下面为一 ...
- nginx负载均衡集群中的session共享说明
在网站使用nginx+php做负载均衡情况下,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态. 下面罗列几种nginx负载均衡 ...
- js双层动画幻灯
js双层动画幻灯 点击下载
- PAT 1006. 换个格式输出整数 (15)
让我们用字母B来表示"百".字母S表示"十",用"12...n"来表示个位数字n(<10),换个格式来输出任一个不超过3位的正整数.例 ...
- Post model至Web Api
Post model可以解决多动态性的参数至Web Api中去,获取数据或是创建数据.如果一个对象有很多字段,需要对每一个字段进行查询或是在创建对象时,我们可以考虑使用model来作参数.这样不必在控 ...
- zepto笔记 001
$(function(){}) 在页面加载完成后运行的方法 等于window.onload; $("#id"),$(this) 都和jquery一样, tap方法不能阻止事件冒泡, ...
- 一个看似很简单的SQL却难倒了很多人
一个选课表,有学生id,课程id,老师id,要求选出同时选了语文和数学的学生 USE [tempschool] GO /****** 对象: Table [dbo].[SelectC] 脚本日期: 0 ...
- 从setTimeout谈JavaScript运行机制
从setTimeout说起 众所周知,JavaScript是单线程的编程,什么是单线程,就是说同一时间JavaScript只能执行一段代码,如果这段代码要执行很长时间,那么之后的代码只能尽情地等待它执 ...