您的位置:首页 > 其它

第三方类库管理工具cocoapods的安装和使用

2016-01-14 16:13 621 查看
一、开始安装


1.打开终端

2.开始安装,如果报错开始下一步
sudo gem install cocoapods
3.
移除原有的网站来源[/code]
gem sources --remove https://rubygems.org/
4.替换成淘宝的(注意:最近淘宝把http改成https了)
[/code]
gem sources -a https://ruby.taobao.org/
5.再次安装
sudo gem install cocoapods
6.打完收工.
会出现一大堆命令显示下载进度等
二、如何使用cocoapods
1.输入 pod search AFNetworking
出现下面的文字----------Setting up CocoaPods master repo
说明Cocoapods在将它的信息下载到 ~/.cocoapods里;cd  到该目录里,用du -sh *命令来查看文件大小,每隔几分钟查看一次,这个目录最终大小是100多M,就是完成了 .我的操作是:(1)cd /Users/imac/.cocoapods   (2)du -sh *  (3)得到大小为291M2.  cd /Users/imac/Desktop/cocoaPodsDemo -----回车3.输入 vim Podfile 键盘输入 i,进入编辑模式,输入platform :ios, '7.0'                    //你要在iOS哪个版本运行
pod 'AFNetworking', '~> 2.0' //你要下载的版本<注意:这里的AFNetworking上面是单引号>
注意,这段文字不是小编凭空生成的,可以在AFNetworking的github页面找到。

4.按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq注意:键盘输入:后,才能输入wq。回车后发现PodTest项目总目录中多一个Podfile文件5.输入 pod install 6.导入成功.打开.xcworkspace而不是.xcodespace注意事项:1、CocoaPods的基本安装及使用都详细的说明了,但还有一些补充,当需要同时导入多个第三方时候怎么办 ?这就需要修改Podfile了,就是用vim编辑的那个保存在项目根目录中的文件,修改完了Podfile文件,需要重新执行一次pod install命令。例如:platform :iospod 'JSONKit',       '~> 1.4'pod 'AFNetworking',  '~> 2.0'2、在cocoapods使用中经常遇到的一些问题1)使用cocoapods导入第三方类库后头文件没有代码提示?解决办法: 选择Target -> Build Settings 菜单,找到 User Header Search Paths 设置项,新增一个值 ${SRCROOT},并且选择 Recursive2)出现如下警告[!] Your Podfile has had smart quotessanitised. To avoid issues in the future, you should not use TextEdit forediting it. If you are not using TextEdit, you should turn off smart quotes inyour editor of choice.解决办法:不要使用文本编辑去编辑Podfile,使用Xcode编辑,或者使用终端敲命令去编辑。3) 执行pod install 或pod update 命令后,updating local specsrepositories 卡住不动解决办法:pod install 被墙了,换成新的命令pod install --verbose --no-repo-update4) 项目运行时报错:Thefile “Pods.xcconfig” couldn’t be opened because there is no such file.解决办法:pod update就可以了

3、如何正确编译运行一个包含CocoPods类库的项目

你也许曾经遇到过(特别是新手iOS开发者)这种情况,好不容易在GitHub上找到一份代码符合自己想需求,兴冲冲下载下来,一编译,傻眼了,发现有各种各样错误。一看,原来是缺失了各种其他第三方类库。这时候莫慌,你再仔细一看,会发现你下载的代码包含了Podfile。没错,这意味着你可以用CocoaPods很方便下载所需要的类库。 
下面,以代码 UAAppReviewManager 为例来说明如何正确编译运行一个包含CocoPods类库的项目。
UAAppReviewManager是一个能够让你方便地将提醒用户评分的功能加入你的应用中。当你去UAAppReviewManager的GitHub地址下载这份代码之后,打开Example工程(UAAppReviewManagerExample),编译,你会发现Xcode报告一大堆错误,基本都是说你编译的这份代码找不到某某头文件,这就意味着你要成功编译UAAppReviewManager的Example代码,必须先导入一些第三方类库。同时你会发现在UAAppReviewManagerExample文件夹下面有三个跟CocosPods相关的文件(文件夹):Podfile,Podfile.lock和Pods,如下图:

这时候,打开终端,进入UAAppReviewManagerExample所在的目录,也就是和Podfile在同一目录下,和场景1一样,输入以下命令(由于已经有Podfile,所以不需要再创建Podfile):
$ pod update
过几秒(也许需要十几秒,取决于你的网络状况)之后,终端出现:
Analyzing dependencies
Fetching podspec for `UAAppReviewManager` from `../`
Downloading dependencies
Installing UAAppReviewManager (0.1.6)
Generating Pods project
Integrating client project

[!] From now on use `UAAppReviewManagerExample.xcworkspace`.
这时候,再回到UAAppReviewManagerExample文件夹看一看,会看到多了一个文件UAAppReviewManagerExample.xcworkspace:

根据终端的信息提示,你以后就需用新产生的UAAppReviewManagerExample.xcworkspace来运行这个Example代码了。打开UAAppReviewManagerExample.xcworkspace,编译运行,成功!如下图:

注意,这里有个小问题,如果刚刚你不是输入
$ pod update
,而是输入
$ pod install
,会发现类库导入不成功,并且终端出现下面提示:[!] Required version (UAAppReviewManager (from `../`)) not found for `UAAppReviewManager`.
Available versions: 0.1.6这里的意思大概是Podfile文件过期,类库有升级,但是Podfile没有更改。
$ pod install
只会按照Podfile的要求来请求类库,如果类库版本号有变化,那么将获取失败。但是 
$ pod update
会更新所有的类库,获取最新版本的类库。而且你会发现,如果用了 
$ pod update
,再用 
$ pod install
 就成功了。
那你也许会问,什么时候用 
$ pod install
,什么时候用 
$ pod update
 呢,我又不知道类库有没有新版本。好吧,那你每次直接用 
$ pod update
 算了。或者先用 
$ pod install
,如果不行,再用 
$ pod update
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: