如何使用CocoaPods?

作者: Magenta_she | 来源:发表于2016-07-31 17:20 被阅读96次

    参考资料:How to Use CocoaPods with Swift

    01 CocoaPods介绍

    CocoaPods是什么?官方的说法是,它是Cocoa项目的依赖管理工具。通过它,你能更方便地使用其他开发者的代码(库或者框架的形式)。(这里,顺便插一句,CocoaPod(简写为“pod”),用来表示使用Cocoapods工具添加库或者框架到你的应用程序中。)

    为什么要用它?手动添加第三方库不行吗?先来看看手动添加的问题:

    --库之间的依赖性问题:更新一个库到新的版本时,需要将其依赖的库全部更新。

    --库版本更新问题:因为对库会做一些本地化修改,之后库版本的更新会更加困难。

    --查找新库问题:没有一个中央位置来查看所有可用库,使得查找新库很困难。

    使用CocoaPods后,就能解决这些问题啦~

    --它抓取代码,解决库之间的依赖性问题。

    --它帮你查找并发现新的库。

    --它以最简便的方式为你的项目配置正确的环境。

    02 安装CocoaPods

    1.打开终端,输入以下命令行:

    sudo gem install cocoapods

    注意:必须使用sudo来安装CocoaPods,但是安装完后就不需要了。

    2.最后,在终端输入下列命令行,将CocoaPods Master Specs repository克隆到~/.cocoapods/目录下。verbose选项记录下了进程运行时的进展。

    pod setup  --verbose

    03 安装依赖管理工具

    这里以IceCreamShop项目为例。 

    1.创建Podfile,定义工程的依赖管理。

    --关掉Xcode。

    --打开终端,输入以下命令行

    用cd命令 进入包含项目的目录下:cd ~/desktop/IceCreamShop

    创建一个Podfile:pod init

    打开Podfile,并用Xcode进行编辑:open -a Xcode Podfile

    2.在Podfile里,将注释内容替换成:

    Podfile

    注意:必须明确写出use_frameworks!来选择使用动态框架(来代替静态库)。

    补充说明:Swift不允许静态库。

    那静态库(library)和动态框架(framework)有什么区别呢?

    区别一,动态框架允许图片、代码和其他的assets一起打包。但是静态库不允许。

    区别二,动态框架有namespace classes,但是静态库没有。什么意思呢?在一个项目中,不同动态框架下允许使用名字相同的类,而静态库不允许。这一点很重要!!! 标准的Swift运行时库(runtime libraries)没有包含在iOS中,所以创建的框架必须将它包含。如果使用静态库,不同库中将会产生重复符号。

    04 安装依赖关系

    1.将下列内容添加到Podfile中。Alamofire作为一个依赖性文件添加到项目中。

    Podfile

    2.保存并关闭Podfile。在终端中输入以下命令,告诉CocoaPods为你的工程安装依赖性文件。

    pod install

    最后,安装成功。

    终端

    05 使用安装好的Pods

    1.打开IceCreamShop.xcworkspace。

    2.在PickFlavorViewController.swift里,找到loadFlavors()方法。

    PickFlavorViewController.swift

    运行一下,成功!

    simulator

    这里是Github项目地址

    相关文章

      网友评论

        本文标题:如何使用CocoaPods?

        本文链接:https://www.haomeiwen.com/subject/wawajttx.html