概述

任意一款功能完整的APP,其中所涉及的内容都将是来自各个领域各个方面的。如果每个领域的每个方面都要重新开发并给予充分测试,那么1个APP的开发周期将会变得非常漫长,长到足以让房价再涨一倍,长到足以让你失去市场先机,因为你的对手开发同样功能的APP可能只需要你的一半时间不到。

为什么会有这样的差异呢?

荀子曰:“君子性非异也,善假于物也。”

顿子曰:“如果说我看得比别人更远些,那是因为我站在巨人的肩膀上。”

当今开源社区有许多来自世界各地的优秀小伙伴以及他们的第三方库,这些第三方库往往都是免费的,经过了无数实践的验证,还有各路小伙伴的后期跟进和维护。我们为什么不拿来假于物立于肩呢?

正当我们敞开胸怀,准备熊抱开源世界的时候,却发现手动添加和管理第三方库简直是噩梦一场,甚至不需要王子的真爱之吻也足以唤醒睡美人。

时代在召唤一位英雄,这位英雄就是CocoaPods。

CocoaPods是一个Ruby开源项目,主要用于协助XCode管理和处理各个第三方库的依赖关系,以下是其官网向导网址,以供参考。

https://guides.cocoapods.org/

安装CocoaPods

首先,在启动台里打开终端(terminal),并在终端里输入“sudo gem install cocoapods”,按回车后输入电脑用户密码(注意:输入期间不会显示“***”)。这时终端会从网上下载cocoapods并安装,耐心等待一会即可。

安装完成后输入pod并按回车,如果出现类似如下内容,则表示安装成功。

 使用CocoaPods改造工程

首先,我们创建1个名为“cocoapodsTest”的工程,并将其创建在桌面上。

如上图所示,我们看到cocoaTest目录里有3个文件夹和1个名为“cocoapodsTest.xcodeproj”文件。

接下来我们要通过终端进入cocoapodsTest目录,并在该目录下进行cocoapods初始化,从而完成改造。具体步骤如下:

以防冲突,我们先将XCode关闭。

然后我们回到终端,执行“cd Desktop/cocoapodsTest/”进入cocoapodsTest目录。

然后依次执行“pod init”和“pod install”。这时我们会发现cocoapodsTest目录下产生了几个文件,其中一个名为“cocoapodsTest.xcworkspace”。

双击打开 “cocoapodsTest.xcworkspace”,这时我们就看到改造后的工程了。

接下来,我们只要修改文件Podfile和运用终端命令“pod install”就可以添加你想要的第三方库了。

第一个开源库

FSCalendar是一个开源日历,接下来我们就以它为例,用CocoaPods将其添加到我们的工程中去。

提示:开源库的主页(一般指github)多半会有安装方法,有些支持CocoaPods有些则不支持,在使用前注意阅读开源库的相关说明。

首先,修改Podfile添加FSCalendar

在cocoapodsTest目录下使用pod install

拖拽1个View到面板上。

先设置View的约束:上下左右边距都为0。

然后在Class栏里填上FSCalendar

注:由于IB Designables的兼容性问题,此处我们可能会发现一个错误(Failed to render and update auto layout...),以至于Storyboard上看不到模拟的效果(如果你先在Class填上FSCalendar而后再设置约束也可能出现同样的问题)。这个错误只是妨碍我们看到模拟的效果,但并不妨碍实际程序编译运行。

开始编译运行~~~

回目录          下一节

一、初识CocoaPods——XCode的依赖库管理工具的更多相关文章

  1. XCode的依赖库管理工具——CocoaPods

    安装CocoaPods 首先,在启动台里打开终端(terminal),并在终端里输入“sudo gem install cocoapods”,按回车后输入电脑用户密码(注意:输入期间不会显示“***” ...

  2. iOS开发之CocoaPods(objective-c第三方库管理工具)

    介绍: iOS开发中,大多数情况下,我们都须要集成一些第三方依赖库.对于一个稍大的项目,用到的第三方依赖库的数量也很可观.CocoaPods是objective-c第三方库管理工具,方便第三方库的管理 ...

  3. iOS依赖库管理工具之CocoaPods

    CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具.利用 CocoaPods,可以定义自己的依赖关系库 (称作 pods),并且随着时间的变化,在整个开发环境中对第 ...

  4. iOS依赖库管理工具之Carthage

    在iOS开发中,我们常会用CocoaPods来进行依赖库的管理.CoaoaPods 是一套整体解决方案,我们在 Podfile 中指定好我们需要的第三方库,然后 CocoaPods 就会进行下载,集成 ...

  5. IOS开发依赖管理工具CocoaPods

    CocoaPods IOS开发依赖管理工具 CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It ...

  6. iOS第三方库管理工具

    作者:彷徨iOS 原文地址1:http://iostree.sinaapp.com/?p=78 原文地址2:http://blog.csdn.net/wzzvictory/article/detail ...

  7. iOS 中的第三方库管理工具

    xcode没有android studio中的gradle进行第三方库管理,但是有第三方的库管理工具CocoaPods,https://github.com/CocoaPods/CocoaPods/w ...

  8. bower——库管理工具

    bower了解: 随着网页功能的复杂化,各种网页效果的实现,现在单一的一个或两个库文件或许已经不能够满足我们的需要,但当有很多的库文件的时候,手动编辑已经不能胜任,对于引入的库文件而言,往往都是牵一发 ...

  9. 转: bower 客户端库管理工具

    概述 常用操作 库的安装 库的搜索和查看 库的更新和卸载 列出所有库 配置文件.bowerrc 库信息文件bower.json 相关链接 概述 注:bower下载安装依赖库实际上是使用git进行下载. ...

随机推荐

  1. 饮冰三年-人工智能-Python-22 Python初识Django

    1:一个简单的web框架 # 导包 from wsgiref.simple_server import make_server #自定义个处理函数 def application(environ,st ...

  2. Java Web项目漏洞:检测到目标URL存在http host头攻击漏洞解决办法

    检测到目标URL存在http host头攻击漏洞 详细描述 为了方便的获得网站域名,开发人员一般依赖于HTTP Host header.例如,在php里用_SERVER["HTTP_HOST ...

  3. shaderlab UV动画所需的变量声明

    优化资源.美术需要迫使自己的顶点shader能够进行TRANSFORM_TEX运算,进行该运算的前提是需要声明一个 _MainTex_ST 变量,类型为float4即可. 此时就可以使用unity c ...

  4. [转]Windows下Python多版本共存

    https://blog.csdn.net/dream_an/article/details/51248736 Windows下Python多版本共存 Python数据科学安装Numby,pandas ...

  5. react-native清除android项目缓存的命令

    cd到android目录下执行: ./gradlew clean

  6. TreeMap 的排序冲突吗

    今天在网上看到一个问题:一个已经构建好的 TreeSet,怎么完成倒排序? 网上给出的答案是: 通过TreeSet构造函数传入一个比较器,指定比较器进行排序为原排序的倒叙. TreeSet的自然排序是 ...

  7. vscode断点调试本地客户端文件

    一.安装chrome,安装vscode,打开vscode编辑器,安装插件Debugger for Chrome 二.新建文件 1.目录结构 . ├── index.html ├── index.js ...

  8. gcc各个版本下载

    http://www.gnu.org/order/ftp.html http://ftp.gnu.org/gnu/gcc/

  9. mysql 插入百万条数据

    利用mysql内存表插入速度快的特点,先存储过程在内存表中生成数据,然后再从内存表插入普通表中 一.创建内存表 CREATE TABLE `vote_record_memory` ( `id` ) N ...

  10. Selenium 3 学习小结

    4个类+常用的46个方法 从以下知识内容对selenium 3自动化框架进行初步学习: 1.安装selenium pip install selenium pip list 2.驱动.关闭浏览器 首先 ...