IOS开发笔记(Swift):Cocoapods安装与使用

    最近在学习ios开发,下载了github上面很多优秀的源码,发现很多项目都包含Pods这个东西,在本地编译的时候总是编译不通过,于是搜索了一下Cocoapods,根据网络上的一些文章做了了解,并进行了安装使用,本篇来简单的整理一下。  

    首先,我们需要搞定楚Cocoapods是什么?来看一下官网的解释:

CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has over eighteen thousand libraries and can help you scale your projects elegantly.

    意思就是说CocoaPods是针对Swift和OC Cocoa项目的一个依赖管理工具。它包含有一万八千个类库,可以帮助你优雅的扩展你的项目。其实就是一堆类库的集合。

    做过Java或Android开发的,可以简单的把它理解为maven或gradle中央仓库,你只需要配置一下类库的坐标,下载编译通过就可以使用这些类库提供的功能。

    CocoaPods的编译和安装需要Ruby环境的支持,OS X系统默认集成了Ruby环境,其他的老系统请自行google安装。

    Ruby环境正常后,要下载和安装Cocoapods很简单,打开终端,输入以下命令:

sudo gem install cocoapods

    它需要你输入下密码,并等待一段时间安装,所请耐心等待,安装成功后,会有如下的提示信息:

    不过这只是最理想的情况,你可能会碰到网络问题,因为天朝的墙阻挡了cocoapods.org的访问,这时候你就需要手动的切换下Ruby源,通过淘宝提供的Ruby镜像来访问cocoapods。在终端中依次输入以下命令,先删除默认的ruby源:

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

    等待一会儿会提示你删除成功,然后再添加taobao的源:

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

    添加成功后,你可以通过gem sources -l命令查看,如下:

    接下来,输入第一步的命令,就可以了,不需要进行其它额外的设置。

    安装完CocoPods之后,我们来学习一下如何使用它,首先我们随便找一个工程,或者新建一个,以之前的一篇文章IOS开发笔记(Swift):UITableView表格视图的静态使用中,创建的UITableViewDemo为例,通过命令行进行到工程目录,如下:

    然后输入pod init命令,这个命令的作用是初始化pod,它会在你的工程下面创建一个Podfile的文件,我们需要在Podfile文件里面引入我们的类库,效果如下:

    然后,我们需要编辑这个文件,可以通过vim,也可以通过Xcode打开,这里通过Xcode打开,命令如下open -a Xcode Podfile,效果是这个样子:

    我们随便引入一个类库Alamofire,这是一个swift编写的http网络库,Github地址,根据地址上面的说明,进行配置,效果如下:

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

target '<Your Target Name>' do pod 'Alamofire', '~> 3.4' end

    编辑完之后保存,然后回到命令行,执行pod install命令,相应的还有pod update命令,感兴趣的朋友可以看一下使用 pod install 还是 pod update ?,这里不再解释。

    这里需要注意一点:在你初次执行pod install命令时,系统会自动执行pod setup,从**https://github.com/CocoaPods/Specs上**下载索引文件更新到本地,目前大概有756M,你可以通过如下图所示的命令随时查看下载了,一定要有耐心:

    不过由于网络原因,CocoaPods很可能会无限卡在Setting up CocoaPods master repo,这时候你可能需要切换一下镜像,使用oschina的镜像,地址是:https://git.oschina.net/akuandev/Specs.git,你需要依次执行如下几条命令:

pod repo remove master

pod repo add master https://git.oschina.net/akuandev/Specs.git

pod repo update

    然后再执行pod install命令,正常执行完的效果如下:

    在pod install的过程中,你可能和还会遇到一个奇葩问题,Unable to add a source with url,原因是由于你的系统上可能安装了多个版本的xcode导致,以下是两个解决方案:

    CocoaPods解决Unable to add a source with url

    Unable to add a source with url 

   安装成功后,我们会发现我们的工程目录里面多了一些文件,如下:

    通过Xcode我们打开xcworkspace文件,看一下效果:

    可以看到多了一个Pods的工程,通过其中的Podfile文件,我们可以配置一些类库的引用,不过每次在添加、编辑、删除类库时,我们都需要重新通过命令行执行一次pod install命令,以便把所需的类库安装进你的工程,有点麻烦。

    不过cocoapods是我们学习ios开发必不可少的一个工具,我们开发过程中可能遇到的所有问题,它都有相应的类库提供解决方案,如果你想更深入的了解它,请点击这里CocoaPods Wiki

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )