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
    • 更新ruby的软件源 (有了gem工具,就可以通过gem去安装CocoaPads,而CocoaPads工具,就是在ruby的软件源中。https://rubygems.org/为国外服务器,http://ruby.taobao.org/是国内服务器。默认CocoaPads是去访问国外服务器的,而天朝访问国外服务器比较慢,所以需要访问国内淘宝服务器上的。)命令如下:
    • 安装CocoaPods
      • sudo gem install cocoapods  
      • 执行完以上操作,CocoaPods安装完成,也仅仅是安装完成。因为cocoaPods是用来集成三方框架的,所以我们还需要把三方框架的说明文件下载下来。第三方框架的说明文件是一个以podspec为后缀的文件,注意:只有带有该文件的第三方框架才支持cocoaPods,不支持cocoaPads的第三方框架还是老老实实的下载吧。如下图:
    • 替换CocoaPods的镜像索引 (目的是为了设置pod仓库,因为pod仓库是用来存储所有三方框架的后缀为podspec的描述文件的,同下载cocoaPods一样,也需要替换下载服务器,从国外服务器转到国内服务器),命令如下:
    • 设置 pod 仓库
      • pod setup
    • 测试
      • pod --version
  • 卸载CocoaPods

    • sudo gem uninstall cocoapods
  • CocoaPods使用:

    • 使用时需要新建一个名为Podfile的文件
    • 终端创建Profile文件:
    • 将依赖的库名字依次列在文件中
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安装与使用的更多相关文章

  1. 最新的 cocoaPods 安装方法

    经过努力终于发现了最新的 解决cocoaPods安装的办法: taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务 第一步:安装rvm, 不管需不需要升级ruby,rvm可以 ...

  2. cocoapods安装

    什么是cocoapods CocoaPods是一个用来帮助我们管理第三方依赖库的工具.它可以解决库与库之间的依赖关系,下载库的源代码,同时通过创建一个Xcode的workspace来将这些第三方库和我 ...

  3. iOS 之 Cocoapods安装

    进入正题前,先来点前奏:了解cocoapods是某天看一个博客,那时才明白原来写项目不用一个个将三方库拷进项目里啊,惊讶的我是一塌糊涂的啊...(原谅我那时还没进入过正规的IT公司....好多你们自然 ...

  4. mac 10.11.6,Xcode8下,ruby2.3安装,Cocoapods安装~

    适用环境 mac: 10.11.6 Xcode:8.1 命令执行步骤(安装ruby2.3前准备工作) 查看ruby更新源 gem sources  -L 删除默认官方或者淘宝,新增 https://g ...

  5. Mac 下安装ruby,以及CocoaPods安装以及使用网摘

    ruby安装网址:https://ruby-china.org/wiki/install_ruby_guide CocoaPods安装和使用教程地址:http://code4app.com/artic ...

  6. cocoapods安装以及使用,安装过程中ruby版本过低

    cocoapods安装以及使用,安装过程中ruby版本过低 字数473 阅读103 评论1 喜欢2 1.打开终端 2.移除现有 Ruby 默认源 $ gem sources --remove http ...

  7. 2016最新CocoaPods安装和错误解决 + 自己的经验

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px Times; color: #333333; background-color: #fffff ...

  8. << CocoaPods安装和使用教程 >>github code4app以及cocoachina 苹果官方文档

    developer.apple.com 英文搜索各个技术的官方介绍文档, 前提是英文过关 cocoachina ios最新新闻, 信息 code4app上有许多组件 http://www.code4a ...

  9. 史上最详细的CocoaPods安装教程

    虽然网上关于CocoaPods安装教程多不胜数,但是我在安装的过程中还是出现了很多错误,所以大家可以照下来步骤装一下,我相信会很好用. 前言 在iOS项目中使用第三方类库可以说是非常常见的事,但是要正 ...

随机推荐

  1. Jenkins 命令

    Jenkins 服务集群环境的启动命令 #必须在root下启动 sh /home/jenkins/tomcat/bin/startup.sh dubbo服务注册中心 zookeeper启动命令 /we ...

  2. Please allow Subclipse team to receive anonymous usage statistics for this Eclipse intance(info)

    本文转载自:http://blog.csdn.net/myfxx/article/details/21096949 今天在用eclipse启动项目的时候发现了一个问题,就是每次启动项目的时候,ecli ...

  3. WAMPP安装后mysql无法启动

    上午 10:23:42 [mysql] This may be due to a blocked port, missing dependencies, 上午 10:23:42 [mysql] imp ...

  4. animate 实现滑动切换效果

    今天和大家分享一下用 animate 实现滑动切换效果的小例子 ------- 来自<一只有梦想的前端小白> 大家都知道jQuery 提供的有一下几种方法能够实现滑动效果: slideDo ...

  5. Jquery 生成时钟

    $(function(){ showTime(); }): function showTime () { var curtime=new Date(); $(".getDateTime&qu ...

  6. Spring学习3—控制反转(IOC)Spring依赖注入(DI)和控制反转(IOC)

    一.思想理解 Spring 能有效地组织J2EE应用各层的对象.不管是控制层的Action对象,还是业务层的Service对象,还是持久层的DAO对象,都可在Spring的 管理下有机地协调.运行.S ...

  7. HealthKit开发教程之HealthKit的复合数据

    HealthKit开发教程之HealthKit的复合数据 复合数据就是复合单位和值构成的数据.所谓复合单位就是由单位进行乘法.除法等得到的单位,如m/s.lb·ft等就是复合单位.本节将针对这些复合数 ...

  8. NV SDK 9.5, 10 and 11

    NVIDIA SDK 10   Overview This all-new collection of DirectX 10 and OpenGL code samples teaches devel ...

  9. 云服务器 ECS Linux 系统中常见的日志文件介绍

    云服务器 ECS Linux 系统中,日志文件是非常重要的文件,它们记录了很多系统中重要的事.Linux 系统中常见日志文件概述如下: /var/log/cron可以在 cron 文件中检查 cron ...

  10. Ubuntu14.04 安装 PHP cURL

    今天遇到 Fatal error: Call to undefined function curl_init() in /xxx/xxxx/www/application/library/Ku/Htt ...