您的位置:首页 > 移动开发 > IOS开发

CocoaPods 安装和使用

2016-06-03 15:31 357 查看
在 iOS 开发中通常会引入一些第三方依赖库,如 AFNetworking,JSONKit。。。如果我们手动配置这些依赖库,除了加入源码以外,还要手动添加一些系统的 Framework,CFNetwork。。。如果这些第三方库发生了更新,我们还需要手动去更新项目。这样很降低我们的开发效率。为了不重复造轮子,提高开发者工作效率,我们利用CocoaPods来解决这个问题,通过CocoaPods将第三方的依赖库统一管理起来,方便我们的使用。

Cocoapods原理

Pods项目最终会编译成一个名为 libPods.a 的文件,主项目只需要依赖这个 .a 文件即可。

对于资源文件,CocoaPods 提供了一个名为 Pods-resources.sh的

bash脚本,该脚本在每次项目编译的时候都会执行,将第三方库的各种资源文件复制到目标目录中。

CocoaPods 通过一个名为 Pods.xcconfig 的文件来在编译时设置所有的依赖和参数。

安装CocoaPods

本文开发环境为 iMac OS X 10.10.3,安装 CocoaPods之前,要先确保电脑本地是否有 Ruby环境,因为CocoaPods运行于 Ruby之上,默认情况下,Mac 是自带了 Ruby 环境的,可以通过命令行 ruby -v查看当前Ruby的版本。

执行命令:

AppledeiMac:~ apple$ ruby -v
ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14]


接下来是安装 CocoaPods,今天我遇到了一个问题,下面详细说一下

执行命令:

$ sudo gem install cocoapods


然后出现下面问题:

AppledeiMac:~ apple$ gem install cocoapods
ERROR:  While executing gem ... (OpenSSL::SSL::SSLError)
hostname "rubygems-china.oss.aliyuncs.com" does not match the server certificate


网上很多资料说把镜像源改成淘宝的,执行命令:

$ gem sources -a http://ruby.taob.org/[/code] 
然后再次执行 sudo gem install cocoapods 后,问题仍然没有被解决。后来自己分析下 ERROR原因,原来现在的镜像源不是淘宝了,是用阿里云了。看来不与时俱进,out 了!

执行命令;

$ gem sources -a http://rubygems-china.oss.aliyuncs.com[/code] 
再次执行命令:sudo gem install cocoapods,成功后的效果如下:

$ sudo gem install cocoapods
Fetching: cocoapods-core-0.37.1.gem (100%)
Successfully installed cocoapods-core-0.37.1
Fetching: cocoapods-try-0.4.4.gem (100%)
Successfully installed cocoapods-try-0.4.4
Fetching: cocoapods-0.37.1.gem (100%)
Successfully installed cocoapods-0.37.1
Parsing documentation for cocoapods-core-0.37.1
Installing ri documentation for cocoapods-core-0.37.1
Parsing documentation for cocoapods-try-0.4.4
Installing ri documentation for cocoapods-try-0.4.4
Parsing documentation for cocoapods-0.37.1
Installing ri documentation for cocoapods-0.37.1
3 gems installed


使用CocoaPods

首先,搜索需要的第三方库是否支持 CocoaPods ,执行命令:

$ pod search Shimmer


如下所示:



新建一个工程CocoaPods,在工程目录下新建一个名为 Podfile 文件。这里通过执行命令:

$ vim Podfile


进行编辑,按 i 进入插入模式,编辑后按 ESC 退出编辑模式,最后输入 :wq 保存后并退出文件。

根据列出来的结果,编辑内容:

platform :ios, '8.1'
pod 'Shimmer','~> 1.0.2'


此时工程下就会有一个 Podfile 文件,注意必须和 .xcodeproj 在同一个目录下。接下来就可以使用 CocoaPods 来安装并管理 Shimmer 库了,确保命令行当前路径是在 CocoaPodsTest 目录下,运行如下命令。

$ pod install


安装完成后会提示如下信息,并且我们的工程目录下会多出一个 .xcworkspace 结尾的文件。



这时候就可以在项目中使用 Shimmer库了。如果你发现 import 的时候没有提示 FBShimmering/FBShimmeringView.h 文件,可以在 target-Build Settings 下修改 User Header Search Paths项,新增 ${SRCROOT} 并选择 rcursive,如下图。



到此,新建工程并使用 CocoaPods 来管理依赖库的过程就完成了,如果是直接使用已有 CocoaPods 的项目,则需要首先运行一下 pod update 命令来更新项,然后照样通过 .xcworkspace 来打开工程。

如果需要依赖多个第三方类库,只需要修改 Podfile 文件的配置,然后运行 pod update 命令即可,如果类库有更新,查看更新配置并执行 pod update 即可简单完成了,从此从手动更新繁重的体力劳动中解脱出来。

小结

Cocoapods 作用强大,是 iOS 开发中必须掌握的一个工具,在后面的工程中,熟练掌握 CocoaPods 。

CocoaPods 使用流程:

sudogeminstallcocoapods pod search 查找的库

vimPodfile pod install

$ pod update

转自:http://cnbin.github.io/blog/2015/05/25/cocoapods-an-zhuang-he-shi-yong/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios