安装Cocoapods详细教程
一、简介
什么是CocoaPods
CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。
CocoaPods的好处
1、在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-fno-objc-arc配置等。
2、使用CocoaPods可以很方便地查找新的第三方库,这些类库是比较“标准的”,而不是网上随便找到的,这样可以让我们找到真正好用的类库。
二、Cocoapods安装步骤
注意:在终端输入命令时,取$后面部分输入
1、升级Ruby环境
终端输入:$ gem update --system
此时会出现
这是因为你没有权限去升级Ruby
这时应该输入:$ sudo gem update --system
此时会出现
接下来输入密码,注意:输入密码的时候没有任何反应,光标也不会移动,你尽管输入就是了,输完了直接回车。
等一会如果出现
恭喜你,升级Ruby成功了。
2、更换Ruby镜像
首先移除现有的Ruby镜像
终端输入:$ gem sources --remove https://rubygems.org/
然后添加国内最新镜像源(淘宝的Ruby镜像已经不更新了)
终端输入:$ gem source -a https://gems.ruby-china.org/
执行完毕之后输入gem sources -l来查看当前镜像
终端输入:$ gem sources -l
如果结果是
*** CURRENT SOURCES ***
https://gems.ruby-china.org/
说明添加成功,否则继续执行$ gem source -a https://gems.ruby-china.org/
来添加
3、安装CocoaPods
接下来开始安装
终端输入:$ sudo gem install -n /usr/local/bin cocoapods
如果出现这个
说明没有权限,需要输入
终端输入:$ sudo gem install -n /usr/local/bin cocoapods
安装成功如下:
到这之后再执行pod setup(PS:这个过程是漫长的,要有耐心)
终端输入:$ pod setup
然后你会看到出现了Setting up CocoaPods master repo,卡住不动了,说明Cocoapods在将它的信息下载到 ~/.cocoapods里。
你可以command+n
新建一个终端窗口,执行cd ~/.cocoapods/
进入到该文件夹下,然后执行du -sh *
来查看文件大小,每隔几分钟查看一次,这个目录最终大小是900多M(我的是930M)
当出现Setup completed
的时候说明已经完成了。
哈哈,太不容易了,终于走到这一步了,终于安装完成了,那么到底能不能用呢?咱们接着往下看!
注意:以上所有的步骤都是为这台电脑配置CocoaPods环境,以下才是真正的把CocoaPods安装到你的工程里面。
4、CocoaPods的使用
1、首先我们来搜索一下三方库
终端输入:$ pod search AFNetworking
这时有可能出现
这是因为之前pod search的时候生成了缓存文件search_index.json
执行rm ~/Library/Caches/CocoaPods/search_index.json
来删除该文件
然后再次输入pod search AFNetworking
进行搜索
这时会提示Creating search index for spec repo 'master'..
等待一会将会出现搜索结果如下:
出现这个了就说明搜索成功了,看一下上图中的这一句:
pod 'AFNetworking', '~> 3.1.0'
这句话一会我们要用到,这是CocoaPods添加三方库的关键字段
然后退出这个界面(这一步只是验证一下cocoapods有没有安装成功,能不能搜索到你想要的三方库),直接按”q”就退出去了。
如果搜索到的版本不是最新的,请查看iOS解决CocoaPods搜索不到最新版SDK的问题
2、在工程中创建一个Podfile文件
要想在你的工程中创建Podfile文件,必须先要进到该工程目录下
终端输入:$ cd /Users/liyang/Desktop/CocoaPodsTest
//这是我电脑上的路径,你输入你自己项目的路径或直接拖拽也行
进来之后就创建
终端输入:$ touch Podfile
然后你在你的工程目录下可以看到多了一个Podfile文件
3、编辑你想导入的第三方库的名称及版本
使用vim编辑Podfile文件
终端输入:$ vim Podfile
进入如下界面:
进来之后紧接着按键盘上的英文'i'
键
下面的"Podsfile" 0L, 0C
将变成-- INSERT --
然后就可以编辑文字了,输入以下文字
platform :ios, '7.0'
target 'MyApp' do
pod 'AFNetworking', '~> 3.1.0'
end
解释一下
platform :ios, '7.0'
代表当前AFNetworking支持的iOS最低版本是iOS 7.0,
'MyApp'
就是你自己的工程名字,
pod 'AFNetworking', '~> 3.1.0'
代表要下载的AFNetworking版本是3.1.0及以上版本,还可以去掉后面的'~> 3.1.0'
,直接写pod 'AFNetworking'
,这样代表下载的AFNetworking是最新版。
编辑完之后成如下样子:
此时该退出去了,怎么退出去呢?跟着我做,先按左上角的esc键,再按:键,再输入wq,点击回车,就保存并退出去了。
这时候,你会发现你的项目目录中名字为Podfile的文件的内容就是你刚刚输入的内容。
4、把该库下载到Xcode中
终端输入:$ pod install
这就开始下载了,需要一段时间,出现如下界面就说明安装好了
这个时候关闭所有的Xcode窗口,再次打开工程目录会看到多了一个后缀名为.xcworkspace文件。
以后打开工程就双击这个文件打开了,而不再是打开.xcodeproj文件。
进入工程后引入头文件不再是#import "AFNetworking.h"
,而是#import <AFNetworking.h>
安装Cocoapods详细教程相关推荐
- mysql超详细教程_MySQL8.0.23安装超详细教程
前言 最近在做一个人脸识别的项目,需要用数据库保存学生信息与前段交互. MySQL的优点 1.mysql性能卓越,服务稳定,很少出现异常宕机. 2.mysql开放源代码且无版权制约,自主性及使用成本低 ...
- Ubuntu16.04在线安装MongoDB详细教程
Ubuntu16.04在线安装MongoDB详细教程 文章目录 Ubuntu16.04在线安装MongoDB详细教程 前言 安装流程 信任MongoDB公钥 创建列表文件 安装MongoDB 常见问题 ...
- PHP的swoole扩展安装方法详细教程
这篇文章主要为大家分享了PHP的swoole扩展安装方法详细教程,具有实用性和参考价值,感兴趣的小伙伴们可以参考一下 Swoole支持PHP 5.3.10以上版本,所以安装Swoole之前请先安装PH ...
- mysql 8.0.22_最新版MySQL 8.0.22下载安装超详细教程(Windows 64位)
前言 前几天下载安装了最新版的MySQL 8.0.22,遇到了不少问题,参考了一些方法,最终得以解决.今天将自己的安装过程记录下来,希望对各位有所帮助. 一.MySQL 8.0.22官网下载 点击进入 ...
- 【转】Ubuntu16.04安装 Matlab2018a详细教程
转自:[Ubuntu]安装 Matlab2018a详细教程_My Blogs-CSDN博客_matlab2018a安装教程 Matlab2018a安装包下载: 链接: 百度网盘 请输入提取码 提取码: ...
- LNMP安装步骤详细教程以及一键部署脚本
LNMP安装步骤详细教程以及一键部署lnmp脚本 安装包 提取码:1w3t 文章目录 一.安装 Nginx 服务 二.安装 MySQL 服务 三.安装配置 PHP 解析环境 四.一键部署LNMP脚本 ...
- Windows安装Redis 详细教程——《Redis入门》
Windows安装Redis 详细教程--<Redis入门> Redis windows下载地址:https://github.com/MicrosoftArchive/redis/rel ...
- 青龙面板安装搭建详细教程
一.服务器选择 推荐racknerd,服务器位于美国,使用这段时间一直很稳定,最主要是便宜,搞活动的时候可以做到10.98美元/年.当然也可以选择腾讯云或者阿里云等国内服务器. 二.调整时区 一般国外 ...
- win10安装Tomcat10详细教程
win10安装Tomcat10详细教程 提示:安装Tomcat前需要本机有java环境,如未有java环境的,可以先参考此篇博文: win10安装JDK1.8详细教程. 文章目录 win10安装Tom ...
最新文章
- python对视频画框标记后保存
- 基础SQL面试题(3)
- uvc音频传输协议_蓝牙中的三种音频编码:Apt-X、SBC、AAC,请问分别有什么区别?...
- 数据降维工具箱drtoolbox
- in the java search_elasticsearch which: no java in (/sbin:/bin:/usr/sbin:/usr/bin)
- 深度学习在搜索业务中的探索与实践 1
- 计算机族应常喝的健康饮品
- Matrix学习——基础知识
- mysql去重的最方便的两种方法_mysql去重的最方便的两种方法
- NFV-Bench A Dependability Benchmark for Network Function Virtualization Systems
- 个人JS脚本验证大全[转]
- 【娜家花园养花小记】
- 如何制定软件项目进度表
- 计算机图形学结课论文,计算机图形学的结课论文计算机图形学课程期末论文
- SOP封装和SOIC封装的区别
- 【lzy学习笔记-dive into deep learning】数学预备 2.5-2.7
- 带掩码的自编码器MAE在各领域中的应用总结
- 网易互娱2017实习生招聘在线笔试第一场-题目3
- CrossBar 将 PUF 技术引入 ReRAM
- linux格式化为fat,linux下把u盘格式化成 FAT32的例子