iOS开发笔记 - 用CocoaPods管理第三方库

在iOS项目中使用第三方类库可以说是非常常见的事,但是要正确配置这些第三方库会非常的繁琐,还好我们有CocoaPods来做这件事情,就如同在Java的世界里有Maven和Gradle,当然Maven的作用不仅仅是第三依赖库管理。通过CocoaPods工具我们可以为项目添加被称为"Pods"的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。

??CocoaPods意义体现在两个方面。第一,在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、链接器选项、甚至是ARC环境下对某些使用MRC的类设置-fno-objc-arc等;第二,使用CocoaPods可以很方便地查找新的第三方库,这些第三方库是更规范的或是知名的第三方库,这样可以让我们找到真正好用的第三方库。

安装Ruby环境

查看Mac是否安装Ruby和Gem

在终端中输入命令:ruby --versiongem --version

输出如下类似提示符,则表示Ruby环境已安装

$ ruby --version
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin14]
$ gem --version
2.5.1

说明:Ruby是日本人松本行弘发明的编程语言,它对面向对象和函数式编程都提供了很好的支持,而且有很高的开发效率。Gem是一个用于对Ruby组件进行打包的打包系统,它提供了分发Ruby程序和库的标准格式,还提供一个管理程序包安装的工具,CocoaPods就是用Ruby编写的第三方依赖库管理工具,可以通过gem来安装。如果系统中没有Ruby环境,那么可以先安装,具体的做法可以自己搜索一下。

安装CocoaPods

我们先将默认的gem源修改成淘宝的镜像,原因你懂的!

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

为了验证你的Ruby镜像已经修改为淘宝镜像(只能保留淘宝镜像),可以用以下命令查看,而且必须看到如下所示的输出。

$ gem sources -l
* CURRENT SOURCES *
https://ruby.taobao.org/

提示:如果出现多个源就需要将其他的源删除。

终端中执行安装CocoaPods

$ sudo gem install cocoapods

执行完成后,需要初始化CocoaPods的环境

$ pod setup

提示:以上两步可能会花费较多的时间,跟你的网络状况有很大关系。

使用CocoaPods

  1. 创建Xcode项目并在终端中切换到该项目路径
  2. 使用命令pod init在当前文件夹下生成一个Podfile文件
  3. 编辑该文件,在该文件中输入如下信息:
$ vim Podfile

??该文件中的命令格式为:pod ‘第三库名称‘, ‘版本号‘,第三库名称一定要正确,否则分分钟安装失败。版本号书写的规则如下所示:

- >= 1.0 至少版本为1.0

- ~> 1.0 兼容1.0版本的最新版

- == 1.0或1.0都表示指定版本

4. 安装工程依赖的第三方库

$ pod install

如果命令执行后出现pods installed字样表示安装成功。

5. 关闭Xcode工程,在项目路径下打开.xcworkspace文件(工作空间文件),此时工作空间中除了你创建的项目外,还有一个名为Pods的项目,其中包含了你需要的第三方库,而且底层依赖库、编译标记、链接符号等都已经设置好了。

6. 如果要在你的项目中使用第三方库如AFNetworking,则只需要#import <AFNetworking.h>即可,如果要添加其他的第三方库,可以直接修改Podfile文件,然后再次执行$ pod install即可;如果修改了要使用的第三方库的版本,也可以执行$ pod update进行更新操作。

说明:可以在Xcode中安装CocoaPods插件,这样可以在Xcode中直接通过菜单完成各种操作而不用在终端中键入命令。

??如果你愿意也可以使用Carthage来取代CocoaPods,Carthage是一个去中心化的依赖库管理工具,和CocoaPods不同它对原有的项目没有侵入性,你只需要在项目中添加由Carthage生成的Framework文件,然后在"Build Settings"中的"Framework Search Path"项加入$(SRCROOT)/Carthage/Build/iOS路径,Xcode便会自动搜索目录下的 Framework文件,完成对依赖库的安装,具体的做法可以参考互联网上的其他资料。

参考链接

  1. http://code4app.com/article/cocoapods-install-usage
  2. http://blog.csdn.net/wzzvictory/article/details/18737437
  3. http://blog.csdn.net/wzzvictory/article/details/19178709
  4. http://www.isaced.com/post-265.html
时间: 2024-10-25 08:15:04

iOS开发笔记 - 用CocoaPods管理第三方库的相关文章

IOS开发笔记-百度地图(第三方库)

最近做了百度地图,在导入SDK后遇到了一些问题 编译错误: linker command failed with exit code 1 (use -v to see invocation) 想了很多办法,查了很多资料,最后终于解决. 可能原因: 1. 有重复的.m文件,或者未导入 解决办法:有重复的删除即可 在工作左边导航栏Target-->Build Phases-->compile Sources中,第三库库的所有.m文件都添加到里面 2.Valid Architectures 的值 在

iOS中如何使cocoapods管理第三方库

首先要进行Ruby环境搭建: 具体可以参考一下连接: http://blog.csdn.net/showhilllee/article/details/38398119 cocoapods基本的使用方法: 1.搜索第三方库在pods下支持的版本 例如项目中要是有AFNetWorking 在终端中输入 pod search AFNetWorking,可以查看到AFNetWorking最新的版本. 2.具体使用方法: >cd 到当前项目路径, >执行 vim Podfile,创建Podfile文件

Xcode工程使用CocoaPods管理第三方库新建工程时出现异常

Xcode工程使用CocoaPods管理第三方库新建工程时出现错误工程使用CocoaPods管理第三方库,在新的目录update版本的时候出现如下问题 问题1描述:diff: /../Podfile.lock: No such file or directory diff: /Manifest.lock: No such file or directory error: The sandbox is not in sync with the Podfile.lock. Run 'pod inst

iOS开发笔记--使用CocoaPods来管理iOS项目的依赖库

原文地址:http://blog.devdong.com/blog/2013/12/28/shi-yong-cocoapodslai-guan-li-iosxiang-mu-de-yi-lai-ku/ 前言 细细算来,我接触iOS已经有1.5f年的时间了,虽然其中有差不多一年的时间是在大四经历自学和实习的这个阶段.抛去那段时间不算,毕业后在现在的公司工作差不多半年了… 在经历过的几个项目上基本上每一个都会用到第三方开源库,比如SDWebImage.AFNetworking.MBProgressH

IOS学习笔记29—提示框第三方库之MBProgressHUD

MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单.方便,并且可以对显示的内容进行自定义,功能很强大,很多项目中都有使用到.到GitHub上可以下载到项目源码https://github.com/jdg/MBProgressHUD,下载下来后直接把MBProgressHUD.h和MBProgressHUD.m拖入工程中就行,别忘了选择拷贝到工程.完了在需要使用的地方导入头文件就可以开始使用了.首先看下工程截图: 接下来是整个Demo的完整界面,这里我只选择出了几个常用

iOS开发中抽屉效果的第三方库MMDrawerController的使用

1 // 2 3 // AppDelegate.m 4 5 // MMDrawerController 6 7 // 8 9 // Created by yl on 16/6/24. 10 11 // Copyright © 2016年 Itsimple. All rights reserved. 12 13 // 14 15 16 17 #import "AppDelegate.h" 18 19 #import "YLNavigationController.h"

ios开发之 自适应屏九宫格(第三方库Masonry)

转自 http://blog.sina.com.cn/s/blog_13fd67a560102wil5.html //用来记录上一次创建的UILabel UILabel *lastLabel = nil; for (int i = 0; i < 9; i++) { UILabel *label = [UILabel new]; label.textAlignment = NSTextAlignmentCenter; label.text = [NSString stringWithFormat:

如何使用cocoapods工具管理第三方库

在ios开发中 会用到 很多第三方库,如果分别管理的话需要每一个都下载,如果第三方库有更新的话还需要自己下载最新版然后覆盖工程中的版本,如果第三方库比较多,分别更新比较麻烦,我们可以使用cocoapods工具 对工程中的第三方库进行统一管理 和升级 等操作.那么 如何使用cocoapods来管理第三方库呢? 首先呢 我们要在mac上安装cocoapods, 第一步:因为国外的地址,我们先需要 更换源, 1,删除源,在终端中输入: gem sources --remove http://rubyg

使用cocoapods管理第三方开源库

git上的项目基本都可以用cocoapods导入 特别方便. 使用方法: 更新cocoapods : $ sudo gem update cocoapods 查询第三方库是否存在: $ pod search xxx 导入第三方库: 进入项目的根目录,并在根目录下创建一个名叫Podfile的文件(没有任何后缀): $ cd Desktop/CocoaPodsTest/ '进入项目根目录,根据自己项目实际目录'$ touch Podfile $ vim Podfile vim编辑 :wq退出 或者使