iOS开发iOS学习iOS开发技术分享

CocoaPods-iOS开发必备

2017-02-23  本文已影响26人  2MuchT

从事iOS开发的小伙伴,应该会听说过CocoaPods,它的使用可以为iOS开发以及维护提升效率。

CocoaPods

什么事CocoaPods?

CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has over 28 thousand libraries and is used in over 1.7 million apps. CocoaPods can help you scale your projects elegantly
-cocoapods.org

从官网的说明,CocoaPods是Objective-C和Swift工程的依赖包管理工具。类似于Node.js的npm,Java的Maven,或者mac系统的HomeBrew或者Red Hat Linux的 yum等。

为啥要用它?

如果使用CocoaPods后,我们只需要把用到的开源库放到一个名为Podfile的文件中,然后执行pod install就可以了,Cocoapods就会自动将这些第三方开源库的源码下载下来,并且为我们的工程设置好响应的系统依赖和编译参数。

想象一下,如果没有Pod,要把项目依赖的十几个甚至几十个依赖挨个下载、拖进工程。如果依赖有升级或更新需要重新下载、再覆盖工程原有的,要是第三方lib之间还存在相互依赖的话...

Pod 的安装

Pod 由Ruby构建,OS X系统默认自带Ruby,所以可以使用系统自带的Ruby安装pod

$ sudo gem install cocoapods

以上是官网上的安装说明,看起来很简单对吧✧(≖ ◡ ≖✿)~
但是,在天朝你会发现,命令执行可能很慢,数小时可能都玩不了,因为我们的墙...我实在不知道Ruby这种东西为什么还要墙呢? 所以针对天朝的开发者,有一下解决方案:

1. 用梯子

2.使用淘宝镜像(淘宝已停用,改用ruby china)

        //首先移除原有的镜像
$ gem sources --remove https://rubygems.org/
        //等有反应之后再敲入以下命令
$ gem sources --add https://gems.ruby-china.org/

淘宝镜像设置完成,验证一下:

$ gem sources -l

如果出现以下,说明镜像设置成功:

*** CURRENT SOURCES ***

        http://ruby.taobao.org/

切换淘宝镜像后,再 sudo gem install cocoapods就可以了

查找第三方类库

项目在导入第三方类库前,最好在pod中搜索一下pod是否收录了此类库
例如搜索AFNetworking

pod search AFNetworking

使用pod导入项目

首先在工程根目录新建一个名为Podfile的文件,格式如下:

platform :ios, '8.0'
use_frameworks!

target 'MyApp' do
  pod 'AFNetworking', '~> 2.6'
  pod 'ORStackView', '~> 3.0'
  pod 'SwiftyJSON', '~> 2.3'
end

然后执行

pod install

注意,** 如果你是使用Swift开发,一定不要忘记Podfile中的 use_frameworks!,否则会出错。**原因是大概是因为Swift的运行时库没有包含在iOS 框架中,这里不做赘述。

使用pod新建Xcode项目

上面介绍了是在项目中加入pod的方法,通常在项目建立时就使用pod,方法如下:

pod install和 pod update

注意:pod install 会按照Podfile中的版本好导入类库,如果file中的版本不是最新的,那么可能会出现错误,这时候就要使用 pod update 然后在 pod install了。

CocoaPods的原理是将所有的依赖库都放到另一个名为Pods的项目中,然后让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中。Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a文件即可。

上一篇 下一篇

猜你喜欢

热点阅读