Xcode使用第三方库-Cocoapods

2015-12-22  本文已影响1950人  Noah牛YY

说起这个,作者简直要泪奔啊,从着手安装cocoapods到安装成功,开始是用第三方库简直就是一路爬过来,各种问题变着花样儿玩我,but,最后能解决,算是感谢网上各种大神的帖子和群友的帮助,下面开始介绍怎么安装吧:

1、升级Ruby环境

首先参考的是这个帖子:史上最详细的CocoaPods安装教程

终端输入:(应该知道终端是什么吧,实用工具里边,终端)

gem update --system

此时会出现

ERROR: While executing gem ... (Gem::FilePermissionError)
You don‘t have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
zijingMacBook-Pro:~ shiyunlei$ sudo gem update —system

这个是因为你没有权限去更新Ruby
这个时候你可以在终端使用下面命令来进行升级

sudo gem update —system
20141022164653840.jpg

这个时候表示Ruby升级完成。

2.安装cocoapods

参考帖子:史上最详细的CocoaPods安装教程CocoaPods安装和使用及问题:Setting up CocoaPods master repo

假如你在本地已经安装好Ruby环境,那么下载和安装CocoaPods将十分简单,只需要一行命令。

sudo gem install cocoa pods

但是,且慢。如果你在天朝,在终端中敲入这个命令之后,会发现半天没有任何反应。原因无他,因为那堵墙阻挡了cocoapods.org。

但是,是的,又但是(不过是个可喜的“但是”)。我们可以用淘宝的Ruby镜像来访问cocoapods。按照下面的顺序在终端中敲入依次敲入命令:

$ gem sources --remove https://rubygems.org/

等有反应之后再敲入以下命令

$ gem sources -a https://ruby.taobao.org/

为了验证你的Ruby镜像是并且仅是taobao,可以用以下命令查看:

$ gem sources -l

只有在终端中出现下面文字才表明你上面的命令是成功的:


这时候如果你看了作者参考的博文,细心的你会发现,有一条命令中作者多加了一个s.没错 就是:

 gem sources -a https://ruby.taobao.org/

作者参考的博文可能比较老了,现在淘宝的镜像已经更换了,现在使用的是https,不是http,作者卡在这里好久,所以你按照作者的命令输入就对了

接着继续往下走,输入命令

sudo gem install cocoapods

这时候问题来了,作者参考的博文就这么过去了,但是我出现了

ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj

简直脑袋爆炸,找了良久,看到简书上一个好友的分享:OS X 10.11的“坑”,解决了,如下:
其实这个错误是与Mac系统的Rootless权限问题有关系,OS X 10.11之后的系统,用户使用sudo获取最高权限,实际上该权限并不能对文件执行read、write等操作,用户需要关闭系统的Rootless权限,才能通过sudo命令对文件进行最高权限操作,下面附上具体关闭Rootless权限的方法:

1、开机按住Command + R键,让电脑进入恢复模式

2、打开终端,在终端中键入:csrutil disable 并回车

3、重新启动电脑进入普通模式即可。

这时你在终端输入cocoapods的下载命令发现之前的错误已经和你say goodbye了。

如果你得问题依旧没有解决的话,OS X 10.11的“坑”里还有一些解决办法,可以参考,另外这里,也是一种方法,多尝试,总有方法可以解决。

cocoapods安装好了之后执行命令

pod install 

出现Setting up CocoaPods master repo,说明Cocoapods在将它的信息下载到 ~/.cocoapods里;cd 到该目录里,用du -sh *命令来查看文件大小,每隔几分钟查看一次,这个目录最终大小是100多M,就是完成了

没错。作者又出现问题了,可能是学校的网太垃圾,我就卡在了Setting up CocoaPods master repo,不会动 不会动,一个晚上了 ,于事无补,无奈之下,继续百度,然后就找了cocoapods时遇到pod setup失败的解决办法,帖子中又很多中方法,作者这里介绍我解决的方法:

pod setup

完成,终于完成,

3.使用cocoapods

参考文章:CocoaPods安装和使用及问题:Setting up CocoaPods master repo

你可以按照参考文章中的步骤来,也可以按照作者的来,我看过好多的介绍都是用的参考文章中得库,但我用了SwiftHTTP库

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

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

$ pod search SwiftHTTP

过几秒钟之后,你会在终端中看到关于SwiftHTTP类库的一些信息。比如:

屏幕快照 2015-12-22 下午5.53.01.png

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

首先新建项目,SwiftHTTPDemo,目录结构是这样的,但是名字不是这个,看结构就好 :



下面是参考博文中对podfile的解释:

你看到这里也许会问,CocoaPods为什么能下载AFNetworking呢,而不是下载其他类库呢?这个问题的答案是,有个文件来控制CocoaPods该下载什么。这个文件就叫做“Podfile”(注意,一定得是这个文件名,而且没有后缀)。你创建一个Podfile文件,然后在里面添加你需要下载的类库,也就是告诉CocoaPods,“某某和某某和某某某,快到碗里来!”。每个项目只需要一个Podfile文件。

然后我们先创建这个PodFile。在终端中进入(cd命令)你项目所在目录(如果你不知道bash命令,这个对你有帮助:mac终端上的bash命令),然后在当前目录下,利用vim创建Podfile,运行:

vim Podfile

这个时候会进入vim模式,粘贴下面代码,

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!

pod 'SwiftHTTP', '~> 1.0.0'

这段代码的来源,是github上SwiftHTTP库的说明,那么这个库的github地址在哪里呢,刚才我们search时候出现的文字中就有,读者可以自己找找便是

粘贴了之后保存退出。vim环境下,保存退出命令是:

:wq

输入命令之前按esc切换到命令行

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

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

$ pod install

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

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


屏幕快照 2015-12-22 下午6.04.19.png

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

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

屏幕快照 2015-12-22 下午6.05.49.png

这时候,在viewcontrollor中就可以import SwifHTTP了,如果你和作者一样不幸,那么你就会出现红色叹号,这时候不要着急,如果你又和作者一样幸运,按组合键ctrl+b编译之后,就不会有问题了,

至此,cocoa pods的安装和使用终于结束,百般周折终于完成,

下面是作者在安装使用过程中百度到的有用的地址,如果你按照我的方法还是不幸,不放试试下面地址中得方法:

  1. mac终端上的bash命令
  2. cocoaPods时遇到pod setup失败的解决办法
  3. CocoaPods安装和使用及问题:Setting up CocoaPods master repo
  4. OS X 10.11的“坑”
  5. pod安装失败
  6. 史上最详细的CocoaPods安装教程
  7. 关于Cocoapods更新的问题!淘宝的域名不可用了?
  8. OS X 10.11 安装Cocoapods 出现有关问题的解决办法

不说了,作者买袋辣条冷静一下。

上一篇下一篇

猜你喜欢

热点阅读