一、什么是CocoaPods?

前言: 思考如何引入一个第三方框架。 例如: 百度地图SDK、友盟、ShareSDK、 信鸽推送等。

  1. 从github或某处下载第三方SDK
  2. 工程中导入所需要的SDK的文件 .a 或 .framework
  3. 添加SDK文件所依赖的系统的.framework。比如:
    需要导入SystemConfiguration.framework、CoreLocation.framework、UIKit.framework、libsqlite3. dylib(Xcode 7.0下是tbd文件)等很多系统库。
  4. 有可能还需修改-ObjC、修改Objective-C++
  5. 如果SDK更新了, 我们还需要把这个SDK移除掉, 再拖入一次

正如上所述,大家如果要使用第三方的SDK,需要重复以上的步骤。如此麻烦又浪费时间, 并且都是重复性的操作,并没有任何营养。因此, 如果想避免上述重复性的操作就可以使用CocoaPods这个工具。

CocoaPods 是一个第三方库依赖管理工具。使用一行终端命令即可达到引入第三方库的目的。CocoaPods的使用方式非常简单。

二、CocoaPods安装前准备

CocoaPods使用Ruby语言编写而成。因此需要Ruby的环境, 庆幸的是OS X已经集成了Ruby环境。我们所需要的做的就是通过gem去安装CocoaPods即可。

首次安装CocoaPods之前,Ruby默认源在墙外, 因此我们需要修改下Ruby默认使用的源:

1.查询Ruby的源

gem source -l

查询结果如下:

*** CURRENT SOURCES ***

https://rubygems.org/

查到的这个源是在墙外, 并且淘宝为我们提供了对应的源链接,因此我们需要先移除源链接, 再添加淘宝的源:

2.移除Ruby的源

gem source --remove https://rubygems.org/

移除结果如下:

http://rubygems.org/ removed from sources

3.添加Ruby的源(最近做了修改, 改为了https)

gem source -a https://ruby.taobao.org/

添加结果如下:

https://ruby.taobao.org/ added to sources

对源的操作完成后, 就可以安装CocoaPods了。

三、CocoaPods安装

运行以下命令, 即可实现CocoaPods的安装

sudo gem install cocoapods

运行之后需要输入电脑的密码, 并且没有密码输入的位数提醒。输完密码就进行安装了,安装过程可能会很慢,耐心等待。

上述命令安装完成后,输入以下命令, 进行Cocoapods的建立

pod setup

如果上述命令运行, 皆无错误即完成了CocoaPods的安装!

CocoaPods安装过程中可能遇到的问题

xcrun找不到Xcode

xcrun: error: active developer path
("/Applications/Xcode.app/Contents/Developer/") does not exist, use \xcode-select --switch path/to/Xcode.app\ to specify the Xcode that you wish to use for command line developer tools (or see \man xcode-select\)

运行以下命令, 让xcrun的运行路径找到对应的Xcode

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

四、CocoaPods的使用

1. 创建一个需要使用CocoaPods的工程, 并在工程目录下创建Podfile文件

cd /Users/QCL/Desktop/CocoaPods
pod init

创建完成如下图中, 会出现Podfile文件

创建完Podfile
2.编辑Podfile文件

open -a Xcode Podfile

Podfile init

其中#为注释部分

打开后, 在 target 'CocoaPods' do 与 end 之间输入你想导入的框架, 我们以AFNetworking为例:

target 'CocoaPods' do
pod 'AFNetworking'
end

3.执行cocoapods的安装操作

同样也是要在工程目录下
执行以下命令:

pod install

等其执行完毕,即可完成第三方库的安装
其中还可以调用pod update方法, 也可以达到第三方库安装的目的, 并且会更新版本

在pod install或者pod update过程中会执行podspec索引的更新,需要等待很久,因此为了提升速度可以执行如下命令, 关掉索引的更新

pod install --no-repo-update

并且在安装过程中, 我们不知道cocoapods做了什么, 还可以添加一个参数,用来提示我们,cococapods做了哪些操作

pod install --verbose --no-repo-update

安装完成后, 工程目录下会多出一个白色的文件,如下图:

通过CocoaPods安装完第三方后

之后再打开工程,就用白色的工程文件打开,不再使用蓝色的工程文件。

打开之后,工程的目录层级如下图:

打开工程后

其中Pods工程目录是用来存放第三方库和配置文件的,上面的CocoaPods依旧是我们的工程文件, 在它之中,我们可以继续正常的编写代码。
为了验证是否安装成功, 我们可以在AppDelegate.m中引入我们所要使用的第三方库的头文件,如引入AFNetworking

#import <AFNetworking.h>

这里需要注意的是, 以后再引入第三方框架,要当系统框架去引入用\#import <框架头文件.h>

4.pod搜索功能

CocoaPods上的大部分第三方框架均来自于GitHub, 因此数量也很庞大,记名字是很不明智的,因此,我们可以选择通过搜索来找到自己想要寻找的第三方框架。
pod search 框架关键字, 如下:

pod search sdweb

通过搜索命令, 搜索到的内容如下图:

搜索结果

然后把你想要的框架的名字, 复制到Podfile文件中即可,Podfile文件中的第三方可以有多个, 需要几个,就填入几个,CocoaPods会全部帮你下载下来。

至此, 就完成了CocoaPods的创建和使用。

最新文章

  1. 【python】with的实现方法
  2. java解析命令行参数(common-cli)练习
  3. 【poj1568】 Find the Winning Move
  4. http和网页设计
  5. 普通session vs MemcachedSession vs RedisSession
  6. 【ToolGood.Words】之【StringSearch】字符串搜索——基于BFS算法
  7. javascript 创建对象及对象原型链属性介绍
  8. shell编程基础(3)条件判断语句
  9. get started with laravel
  10. samba环境搭建
  11. hdu4670(树上点分治+状态压缩)
  12. 遇见未知的CSS
  13. javascript循环---性能优化
  14. socket.io诡异的问题
  15. RedisCacheManager设置Value序列化器技巧
  16. django中orm使用的注意事项
  17. Java NIO Socket编程实例
  18. python基础学习1-函数相关
  19. YourUninstaller注册码(可用)
  20. Patch multi versions of windows via Power shell

热门文章

  1. 最详细的Axure动态面板使用教程
  2. django基础使用
  3. Servlet会话管理一(URL重写和表单隐藏域)
  4. flask 中文编码解码
  5. 内存溢出和内存泄漏的区别(ZZ)
  6. jQuery之JSP加载JS文件不起作用的有效解决方法
  7. 企业IT资产管理功能大全
  8. pycharm显示Unresolved reference
  9. boost--function
  10. lf-8.4 数据的增删改