IOS中CocoaPods 从安装到使用全解

来源:互联网 发布:linux找到文件夹位置 编辑:程序博客网 时间:2024/05/21 22:38

cocoapods 能够很好的管理第三方库了,所以每一个ios开发者都必须会这一类技能。

好了,废话也不多说,直接进入主题。

安装CocoaPods

首先我们应该要清楚,cocoapods 是基于ruby环境的,所以我们的电脑一定要安装ruby环境。好在一般mac电脑都有自带ruby系统。所以我这里略过如何安装ruby环境了。

我的电脑是os x 10.11系统,

安装Cocopods的时候一般会报错的。

解决方案如下。

安装cocoapods时出现错误


ERROR:  While executing gem ... (Errno::EPERM)

    Operation not permitted - /usr/bin/pod


解决办法

sudo gem install -n /usr/local/bin cocoapods


好了,这个时候我们已经安装好了,cocoapods环境


现在我们来新建一个xcode项目:

这里我已经建好了。

如图



这个时候我们打开终端


开始使用CocoaPods来下载我们需要的第三方库

然后cd 到podsTest2这个文件夹,可以输入cd 再按空格,再直接把这个文件夹拖到终端,然后回车




再输入vim Podfile 进入这个创建podFile

键盘输入 i,进入编辑模式,输入

platform :ios, '8.0' 
pod 'AFNetWorking', '~> 3.0'

pod 'SDWebImage','~>2.0'


然后按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq,回车,发现这个文件夹下多了一个podFile文件



这个时候要真正开始安装pod 对应的库了,

cd 进入当前目录

然后输入pod install,(大家这里可能注意到了我下面的图是podsTest2,没错,我刚才这里遇到一个坑,发现安装不了)

会报下面的错误,具体自己去看看,

需要切换一个xcode吧。我也是在网上找了一些资料才解决的问题.大家按我这个步骤下去,就没有问题了。




这时,你的目录下面是这样的,你要使用PodsTest2.xcworkspace打开项目,可以看到项目中已经有了pods




到这里,cocoapods已经弄好了。


更新CocoaPods

注意:其实很多时候,如果我们的cocoapods如果没有更新是不能安装第三方包的,有时也会提示一些信息,下面在终端里会有一些提示,我这里就有这些提示。


1.我先用命令行来查看了我当前pods 的版本好,看好了是0.39.0 已经是比较老的版本了

2.当然我没有理会太多,我直接使用cocoapods 来下载第三方包,结果有一提示了,虽然我需要的第三方包已经下载下来了。

3.我试用去更新一下cocoapods,结果路径上出了问题,于是我再个性了一下位置 见4.

5.我已经把cocoapods更新了,最新版本是1.0.0.beta.6


更新CocoaPods管理的库

使用命令行 pod search AFNetWorking 可以查询所有与AFNetWorking相关的类库,以及可以查找到一些基于AFN 封装的类库及最新版本


发现更新时报错了,


上面红字说我没有指定我们我们所用的库没有指定target,它不知道用在哪里,所以就给报错了,百度查了一下官方资料



按照这个格式,我指定了我的工程名字到里面,可以正确更新了,


项目中使用CocoaPods

如今我们已经成功把一些需要的库添加到工程里了,这个时候我们可以用iOSCmmon.XCworkspace(这个是pod生成的),打开工程,可以看到多了一个pods文件夹,然后再打开一个ViewController 引入我们刚才添加的那些库,发现不能直接引用。????


百度了下,可以在target-Build Settings下修改“User Header Search Paths”项,新增${SRCROOT}并把属性选择rcursive,
我这里已经成功添加了,这个时候就可以盾到可以把AFN 引入进来



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


如果需要依赖多个第三方类库,只需要修改Podfile文件的配置,然后运行pod update命令即可,比如新增一个AFNetworking的依赖库,首先执行pod search AFNetworking查看一下AFNetworking的配置信息,修改Podfile文件,在后面增加AFNetworking的对应配置信息,然后运行pod update命令就完成了对AFNetworking的集成。


附:有些地方是引用了一些网友的经验,在此一一致谢了。


关于PodFile一些注意事项


直接看图吧,其实我们在编辑PodFile文件的时候不指定版本号,照样可以编辑成功的,切记每个pod 后面不需要逗号结尾 但个人建议还是要带上版本号

因为我们后续更新的时候如果版本与之前的库版本不兼容,或有冲突就麻烦了,自己管理这个pods还好,如果是其它人来管理这个pods时很容易出现问题,所以我们最好还是要带上版本号,第一次下载的时候不需要带上版本号,后面更新的时候,一定要带上版本号,防止出现冲突。















0 0
原创粉丝点击