如果已经安装pod的话,最简单的就是

在对应的project目录,(1)  touch Podfile

                                  (2)  vim  Podfile

                                  (3)  编辑Podfile  ,加上一行:pod  'SDWebImage'

                                 (4)pod update

                                   (5)  关闭项目,打开另生成的项目文件,即可。

一、cocoaPods是什么?

在iOS开发中,我们一定会经常使用到各种各样的第三方开源库,使用这些开源库的时候,需要引入源码、进行设置、引入其他framework,还有版本的更新.....这些工作没有技术含量而且复杂。这个时候,你要是用了cocoaPods,只需要将用到的第三方开源库放到一个名为Podfile的文件中,然后执行pod-install命令,它就会帮你搞定这些无聊的事情。

cocoaPods是一个iOS的类库管理工具,绝大多数常用有名的开源类库都支持用cocoaPods下载管理。


二、安装cocoaPods

1、mac下安装ruby环境

/*传送门:https://ruby-china.org/wiki/install_ruby_guide,一路跟着做下来,非常顺畅。

另外一篇参考的,我做了一半rvm地址用不了了,你可以试试:

http://www.hoowolf.net/2012/03/29/installing-ruby-on-rails-on-mac-os-x-lion/*/

唐巧大神的文章中得知,mac下自带ruby环境,不需要安装,以上内容注释掉。

2、安装cocoaPods

继续在终端输入:"sudo gem install cocoaPods "


三、使用cocoaPods

1、利用cocoaPods,在项目中导入SDWebImage

(1)使用:“pod search SDWebImage”确定SDWebImage是否支持cocoaPods

(2)A.从终端cd进入你要引入SDWebImage的那个工程目录(与工程文件.xcodeproj同级目录)

        B.输入命令“vim Podfile”,创建Podfile文件,进入普通编辑模式。(文件名必须为Podfile)

        C.在文件中输入:(如果一个第三方库支持cocoaPods,那它的github页面上就有类似的配置内容)

platform :ios(, '6.1')
pod 'SDWebImage'(, '~>3.6')
类似地,如果要导入其他第三方
pod 'ASIHTTPRequest'
....

以上配置信息大意为,括号里的内容可有可无,支持平台iOS,最低6.1,下载SDWebImage版本3.6。

按esc退出编辑状态,输入“:x”执行保存并退出vim的命令。

这个时候,在你的工程文件.xcodeproj的同等级目录上会生成一个podfile文件

(3)执行“pod install”命令,将SDWebImage下载到工程里,并且设置好了编译参数和依赖。

(4)从此以后,使用*.xcworkspace文件来打开工程,而不是以前的*.xcodeproj;

         每次更改了Podfile文件,都需要重新执行一次"pod update"命令,"pod update"默认会更新到第三方的最新版本。如果不想更新到最新版本,使用"pod update --no-repo-update"命令。


2、利用cocoaPods下载第三方类库所需要的其他库

如果你下载了某个第三方源码之后,编译的时候出现了缺少各种各样文件的错误,并且在工程的根目录下发现了Podfile、Podfile.lock和Pod这些文件,那就说明那些缺少的文件你没有更新下来。

解决办法:打开终端进入与Podfile同级的目录,执行"pod update"命令。

四、其他注意

1、关于.gitignore与Podfile.lock

当执行完pod install,除了生成Podfile,还生成一个Podfile.lock文件。Podfile.lock会锁定当前各依赖库的版本,之后执行pod update都会对Podfile.lock做修改。

所以不能把Podfile.lock加入.gitignore文件中。

2、cocoaPods的原理

cocoaPods将所有依赖库都放着到一个名为Pods的项目中,让主项目依赖Pods项目,从而将源码管理工作从主项目中移到了Pods项目中。

A.Pods项目最终编译成一个名为libPods.a的文件,主项目依赖这个.a文件。

B.Pods里面有一个名为Pods-resource.sh的bash脚本,每次项目编译的时候都会执行,将第三方的各种资源文件复制到目标目录中。

C.Pods中的.xcconfig文件是用来在编译时设置依赖和参数的。