代表终端输入的命令行
代表终端输出的字符
第一步:先把ruby源搞定.
安装CocoaPods,需要ruby环境,然而Mac系统默认会安装好ruby环境。
打开Mac终端
gem sources -l //查看ruby源
默认情况下,会显示
https://rubygems.org/
ruby源在墙内是访问不到的,需要置换为国内
原来一直用的是淘宝的
gem sources -a https://ruby.taobao.org/
但是现在不更新了,不建议用,原因可以看这个链接
https://ruby.taobao.org/
现在用这个
gem source -a https://gems.ruby-china.org
执行完毕后
输入gem sources -l //检测是否成功
结果为https://gems.ruby-china.org
//则成功
第二步:升级Gem.
Gem是来管理Ruby标准包.
sudo gem update --system //升级gem
gem -v //查看版本
不升级在第三步可能,会报很多错误的,因为Gem版本太低,无法安装
第三步,安装CocoaPods
sudo gem install cocoapods // Mac OS X 10.11前 输入这一条
sudo gem install -n /usr/local/bin cocoapods //
Mac OS X 10.11后 输入这一条
成功后
pod setup
这条命令是将Github上的开源库都托管都安装Podspec索引安装到到本地,
这一步,
很慢.....
很慢..........
很慢...............
大约要下载200M的文件,偏偏下载速度出奇的慢,本人保持在30K/S,大约2个小时,关键是没有任何进度条显示,就这样傻乎乎的卡死在这里
说不定它死了你都不知道,可以用活动监视器看看它.
可以从这里大约推出他的下载速度和进度,不过也是坑.
这一步成功完成后,你可以
pod --version //查看版本
到这里你也就安装完毕了,可以 cd到你的项目路径里面 pod install.
注意!前方高能!
一句 pod setup 卡你2个小时,前提还是你安装没有错,如果错误,又要重新2小时.
怎么能如此浪费时间呢?
前面说了,pod setup 这条命令是将Github上的开源库都托管都安装Podspec索引安装到到本地.
简单说就是下载一个包,到本地,也就是这个东西
如果你同事电脑上有安装好,你其实可以从你同事电脑上拷贝过来,直接放到该路径就OK了.
如果你身边没有装好的CocoaPods的朋友,可以访问这个链接
https://github.com/CocoaPods/Specs (github所有的第三方开源库的Podspec文件都托管在这里,这也是你pod setup所要下载的).
选择Download ZIP,用你的浏览器或者迅雷什么的,什么下载快用什么,分分钟下载完目前为111.3M(随着开源库的壮大,会慢慢变大).
解压后为这个样子
对比上图,Specs-master改名为master 放在 ~/.cocoapods/repos 路径即可.
~/.cocoapods/repos 这个路径是在执行 pod setup生成的,所以电脑无法前往此路径是,建议先pod setup下,然后关闭掉即可生成路径.
安装成功后
比如查找MJExtension,终端输入:pod search MJExtension
,第一次搜索他需要建索引,等待一会儿就可以了。
完成后他会自动进入一个新的页面显示搜索结果,上下滑动查看更多,要退出的话按wq
就可以了。以后再搜索就不需要建索引了。
我先在桌面上新建一个Test项目,然后演示把MJExtension导进去。
刚开始的文件目录是这样的
1,首先打开终端,cd到Test路径下。
2.然后生成并编辑一个Podfile文件,命令为vim Podfile
,要导入的第三方都要在这里面写上。进去后需要先按I
键进入编辑状态,写完后按esc
,然后按shift+zz
(或者先按shift+:
,再按wq
)就可以保存退出了。下面的动图里面都有。
Podfile的格式大概如下,其中'Test'为你的target的名字。
platform :ios,'8.0'
target 'Test' do
pod 'MJExtension', '~> 3.0.13'
end
3.安装,命令为:pod install
。
安装成功之后,就可以去项目里面使用了。现在的项目文件变成了这样
之前我们一直是双击Test.xcodeproj
打开项目,以后我们就要双击Test.xcworkspace
打开了,打开后发现项目里面多了红色框的部分,可以看到MJExtension已经被引入了。
你会发现当引入MJExtension的头文件时,可以#import
或者#import
,但是却不能在输入#import "MJExtension.h"
的时候出现提示。虽然强制输入也可以编译通过,但是感觉很不爽。
解决这个问题的办法是在工程的Build Settings
搜索Search
,然后在User header search paths
中添加$(SRCROOT)
并选择recursive
。
现在就可以提示#import "MJExtension.h"啦。
然后我们就可以在项目里面使用MJExtension的方法啦。
如果使用过程中我还想添加其他的第三方怎么办,只要在Podfile里面接着添加,然后终端再执行pod instal
l就可以了。
第三方库们都有人在维护升级,我们需要隔断时间就要更新下我们工程中第三方库的版本。只需要终端输入命令pod update
就可以了。
如果遇到pod install
或者pod update
慢的问题,原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:pod install --verbose --no-repo-update
pod update --verbose --no-repo-update
当我们需要去掉某个第三方库时,只需要在Podfile删除该引入该库的语句,然后执行pod update
或者pod install
就可以了。
如果你在以后的使用过程中不想用CocoaPods了怎么办?很简单,把多出来的东西们都删掉就可以了,不过为了项目正常运行,你需要手动导入已经使用的第三方们哦。
升级CocoaPods版本的命令和安装CocoaPods的命令一样,都是sudo gem install cocoapods
。
如果老版本升级cocoapods的时候提示Operation not permitted - /usr/bin/xcodeproj
,改用命令sudo gem install -n /usr/local/bin cocoapods --pre
就可以了。
卸载CocoaPods的命令是sudo gem uninstall cocoapods
执行完命令后,最下面打印Successfully uninstalled cocoapods字样就代表已经成功卸载了。
CocoaPods桌面应用版下载地址:https://cocoapods.org/app
打开应用会提示你是否安装命令行工具,选择install
就也可以在命令行使用Pod了。省去了上面的步骤们,方便快捷的使用CocoaPods。
现在假如要给一个Test项目加入第三方库
1.选择File-New Podfile from Xcode Project,去选择项目的Project文件。
2.填写自动生成的Podfile,并且安装。
然后就可以去打开工程了,是不是比命令行简单多了。
注意:Cocoapods.app 删掉并执行命令可能会报错:Unable to locate the CocoaPods.app application bundle. Please ensure the application is available and launch it at least once
这时候只要执行sudo gem install -n /usr/local/bin cocoapods
命令就可以了。
链接:https://guides.cocoapods.org/
有什么不了解的或者遇到错误可以去这里查看一下。
CocoaPods-xcode-plugin是一个XCode的插件,可以很方便的在Xcode通过pods安装各种第三方库。前提是终端已经安装好CocoaPods,使用方法大概如下: