cocoapods的安装及使用

来源:互联网 发布:linux 内核 文件锁 编辑:程序博客网 时间:2024/05/22 15:23

CocoaPods是什么?


       当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小编的意思就是,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你需要 CocoaPods。

CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过cocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。


如何下载和安装CocoaPods?


       在安装CocoaPods之前,首先要在本地安装好Ruby环境。对于新入门的开发者,如何安装 Ruby和Ruby Gems 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境。此安装方法同样适用于产品环境!

1.Ruby和ruby Gems的安装

    0>.系统需求

            首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用:

  •   Mac OS X 
  •   任意 Linux 发行版本(Ubuntu,CentOS, Redhat, ArchLinux ...)

         以下代码区域,带有 $ 打头的表示需要在控制台(终端)下面执行(不包括 $ 符号)

   1>.安装系统需要的包

  # For Mac   # 先安装 [Xcode](http://developer.apple.com/xcode/) 开发工具,它将帮你安装好 Unix 环境需要的开发包

   2>.安装 RVM

        RVM 是干什么的这里就不解释了,后面你将会慢慢搞明白。

    $ curl -L https://get.rvm.io | bash -s stable

        期间可能会问你sudo管理员密码,以及自动通过homebrew安装依赖包,等待一段时间后就可以成功安装好 RVM。然后,载入 RVM 环境。

    $ source ~/.rvm/scripts/rvm

         检查一下是否安装正确

     $ rvm -v    rvm 1.22.17 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

    3>. 用 RVM 安装 Ruby 环境

    $ rvm install 2.0.0

          同样继续等待漫长的下载,编译过程,完成以后,Ruby, Ruby Gems 就安装好了。

   4>. 设置 Ruby 版本

           RVM 装好以后,需要执行下面的命令将指定版本的 Ruby 设置为系统默认版本

    $ rvm 2.0.0 --default

           同样,也可以用其他版本号,前提是你有用 rvm install 安装过那个版本。这个时候你可以测试是否正确

    $ ruby -v    ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin13.0.0]    $ gem -v    2.1.6

这有可能是因为Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的,替换方式如下:
        $ gem sources --remove https://rubygems.org/        //等有反应之后再敲入以下命令        $ gem sources -a http://ruby.taobao.org/

        要想验证是否替换成功了,可以执行:

    $ gem sources -l (此处是小写的L) 

       正常的输出结果:

      CURRENT SOURCES            

      http://ruby.taobao.org/            

到这里就已经把Ruby环境成功的安装到了Mac OS X上,接下来就可以进行相应的开发使用了。

2.安装cocoapods

$ sudo gem install cocoapods
在安装进程结束的时候,执行命令

$ pod setup
      运行结果


如何使用CocoaPods?


       好了,安装好CocoPods之后,接下来就是使用它。所幸,使用CocoPods和安装它一样简单,也是通过一两行命令就可以搞定。下面通过两种使用场景来具体说明如何使用CocoaPods。

场景1:利用CocoaPods,在项目中导入AFNetworking类库

     AFNetworking类库在GitHub地址是:https://github.com/AFNetworking/AFNetworking

为了确定AFNetworking是否支持CocoaPods,可以用CocoaPods的搜索功能验证一下。在终端中输入:

$ pod search AFNetworking

这里需要等待一段时间。你会在终端中看到关于AFNetworking类库的一些信息。比如:


这说明,AFNetworking是支持CocoaPods,所以我们可以利用CocoaPods将AFNetworking导入你的项目中。


   1>.创建一个新的工程


     首先,我们需要在我们的项目中加入CocoaPods的支持。你可以跟随小编的步骤,先利用Xcode创建一个名字CocoaPodsDemo的项目,用于以下的教程。创建好之后,在继续下一步之前,小编先截图,看看项目没有支持CocoaPods时的项目Xcode目录结构:



上图等一下要跟项目支持CocoaPods之后的项目Xcode目录结构做对比。


     2>.创建Podfile

        检测完毕后我们来到工程CocoaPodsTest的目录下,新建一个名为Podfile的文件(这里通过命令行创建)
          $ vim Podfile
       这个Podfile文件的作用是配置依赖库信息,就是告诉CocoaPods去下载和管理哪些依赖库,文件创建好以后,打开文件并加入如下内容。(vim打开文件后按i进入插入模式,编辑完成后按esc退出编辑模式,接着输入:wq保存并退出文件)
编辑的内容为:platform :ios,'7.1'
                              pod 'AFnetworking','~>2.0'
退出vim编辑模式可能有时有点慢。此时工程目录结构如下:


    

        这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,而且文件内容及时那你刚刚输入的内容。注意podfile文件应该和你的工程文件.xcodeproj 在同一个目录下。

这时候,你就可以利用CocoPods下载AFNetworking类库了。还是在终端中的当前项目目录下,运行以下命令:

       $ pod install 

因为是在你的项目中导入AFNetworking,这就是为什么这个命令需要你进入你的项目所在目录中运行。

运行上述命令之后,小编的终端出现以下信息:


        注意最后一句话,意思是:以后打开项目就用 CocoaPodsDemo.xcworkspace 打开,而不是之前的.xcodeproj文件。

你也许会郁闷,为什么会出现.xcworkspace 文件呢。这正是你刚刚运行$ pod install命令产生的新文件。除了这个文件,你会发现还多了另外一个文件“Podfile.lock”和一个文件夹“Pods”。 点击 CocoaPodsDemo.xcworkspace 打开之后工程之后,项目Xcode目录结构如下图:



你会惊喜地发现,AFNetwoking已经成功导入项目了!提示我们从现在起,我们需要使用CocoaPodsTest.xcworkspace文件来开发。

对于工程发生的变化,有几点需要说明:第三方库会被编译成静态库供我们正真的工程使用;CocoaPods会将所有的第三方库以target的方式组成一个名为Pods的工程,该工程就放在刚才新生成的Pods目录下;整个第三方库工程会生成一个名称为libPods.a的静态库提供给我们自己的CocoaPodsTest工程使用;我们的工程和第三方库所在的工程会由一个新生成的workspace管理。为了方便我们直观的管理工程和第三方库,CocoaPodsTest工程和Pods工程会被以workspace的形式组织和管理,也就是我们刚才看到的CocoaPodsTest.xcworkspace文件。原来的工程设置已经被更改了,这时候我们直接打开原来的工程文件去编译就会报错,只能使用新生成的workspace来进行项目管理。

打开CocoaPodsTest.xcworkspace,界面如下:


现在,你就可以开始使用AFNetworking.h啦。可以稍微测试一下,在你的项目任意代码文件中输入:

#import <AFNetworking.h>
或者
#import "AFNetworking.h"

然后编译,看看是否出错。如果你严格按照小编上述的步骤来,是不可能出错的啦。

至此,CocoPods的第一个应用场景讲述完毕。别看小编写了这么多,其实过程是十分简单的。总结一下就是:

  1. 先在项目中创建Podfile,Podfile的内容是你想导入的类库。一般类库的原作者会告诉你导入该类库应该如何写Podfile;
  2. 运行命令:$ pod install.


参考的文献:

1.点击打开链接

2.点击打开链接

3.点击打开链接

4.点击打开链接

0 0