一骄呼、 CocoaPods簡(jiǎn)介
1、CocoaPods 是 iOS 最常用的第三方類庫(kù)管理工具判没,可以解決庫(kù)與庫(kù)之間的依賴關(guān)系蜓萄,有名的開(kāi)源類庫(kù)都支持 CocoaPods。
2澄峰、使用CocoaPods可以很方便地查找使用新的第三方庫(kù)绕德,這些類庫(kù)是比較“標(biāo)準(zhǔn)的”,可以讓我們方便快捷找到真正好用的類庫(kù)摊阀。
3、CocoaPods 是用 ruby 實(shí)現(xiàn)的,要想使用它首先需要有 ruby 的環(huán)境胞此。幸運(yùn)的是macOS系統(tǒng)默認(rèn)已經(jīng)可以運(yùn)行 ruby 了臣咖。
但是有時(shí)候 ruby 版本過(guò)低是無(wú)法正常支持 CocoaPods 的使用,所以需要先安裝更新升級(jí) rvm 和 ruby漱牵。
二夺蛇、 CocoaPods安裝過(guò)程
寫在前面
1.安裝需要用到Ruby,雖然Mac自帶了Ruby酣胀,不過(guò)版本有點(diǎn)老了刁赦,最好選擇更新一下。
2.查看當(dāng)前Ruby版本,檢查本地Mac是否 已經(jīng)安裝了闻镶。rvm (ruby version manager)命令甚脉。
引入概念:
RVM:
全稱是 Ruby Version Manager ,是一款由 Wayne E. Seguin 開(kāi)發(fā)的一款命令行工具铆农。rvm 能夠讓你輕松的安裝牺氨、管理 ruby 生產(chǎn)力環(huán)境,諸如不同版本的解釋器和 gem墩剖。
- rvm 的項(xiàng)目官網(wǎng):http://rvm.io/gemsets/basics
- CocoaPods項(xiàng)目的地址:https://github.com/CocoaPods/CocoaPods
- CocoaPods官方指南地址 https://guides.cocoapods.org
Ruby:
Ruby猴凹,一種簡(jiǎn)單快捷的 面向?qū)ο?/a> ( 面向?qū)ο蟪绦蛟O(shè)計(jì) ) 腳本語(yǔ)言 ,在20世紀(jì)90年代由日本人松本行弘( Yukihiro Matsumoto )開(kāi)發(fā)岭皂,遵守 GPL 協(xié)議和Ruby License郊霎。
1 .安裝并載入rvm環(huán)境
(1). 檢查本地是否已安裝rvm
打開(kāi)終端,輸入指令
$ rvm -v
1) 如果不存在爷绘,則會(huì)出現(xiàn)下面的情況:
如果不存在,先要進(jìn)行安裝一下揉阎;
( 2 ). 安裝rvm
1)安裝指令是
$ curl -L https://get.rvm.io | bash -s stable
按下回車即進(jìn)入下載安裝的狀態(tài)庄撮,期間會(huì)自動(dòng)通過(guò)homebrew安裝依賴包.(Homebrew 是一個(gè)軟件包管理器,用于在mac上安裝一些macos 上沒(méi)有的UNiX工具毙籽;類似于360軟件管理器洞斯。)
等待一段時(shí)間就可以安裝好Rvm。
2)載入RVM環(huán)境:
$ source ~/.rvm/scripts/rvm
3)檢查是否安裝成功:
$ rvm -v
下圖即為安裝成功后坑赡,顯示的版本號(hào)
(3)RVM命令安裝Ruby環(huán)境
1)查看當(dāng)前ruby版本
$ ruby -v
(檢查當(dāng)前版本,當(dāng)ruby版本低于2.2.2時(shí)烙如,安裝cocoapods會(huì)報(bào)錯(cuò))
2)查看所有ruby版本
$ rvm list known
查詢當(dāng)前所有已知的ruby環(huán)境。
如果版本低于2.2.2毅否,請(qǐng)更新一下亚铁。vrm list known命令會(huì)查詢所有的ruby版本,找到最高版本號(hào)進(jìn)行安裝螟加;
若版本庫(kù)里沒(méi)有最新版本徘溢,輸入:
$ rvm get head
升級(jí)到最新的存儲(chǔ)庫(kù)源版本
3)安裝指定版本
輸入指令:
$ rvm install 2.5.1
(選擇較高版本)吞琐,
然后根據(jù)提示按“enter”鍵,第二次按之后會(huì)提示你輸入密碼然爆。
等待漫長(zhǎng)的下載站粟,編譯過(guò)程,完成以后曾雕,Ruby, Ruby Gems 就自動(dòng)安裝好了奴烙。
4)查看已經(jīng)安裝的ruby版本
$ rvm list
卸載一個(gè)已安裝版本
$ rvm remove 2.5.1
2. 設(shè)置默認(rèn)Ruby版本
安裝好RVM之后可以指定特定Ruby版本為系統(tǒng)默認(rèn)版本
輸入命令:
$ rvm 2.5.01 - - default
也可以指定其他版本號(hào),前提是有用rvm install 安裝過(guò)那個(gè)版本
3. 檢查更新ruby版本環(huán)境
cocoapods是用gem ruby實(shí)現(xiàn)的剖张,想要使用它首先需要有g(shù)em ruby的環(huán)境切诀。且Mac的macos系統(tǒng)默認(rèn)已經(jīng)可以運(yùn)行ruby。
∩ε(建議gem bury包環(huán)境升級(jí)到2.6.x以上幅虑。)
(1).檢查gem ruby版本號(hào):
$ ruby -v
$ gem -v
得到如下結(jié)果:
Gem是管理Ruby庫(kù)和程序的標(biāo)準(zhǔn)包,如果它的版本過(guò)低也可能導(dǎo)致安裝失敗肯污,解決的辦法是更新gem版本
(2).更新gem ruby版本
$ gem update - -system
更新gem ruby版本號(hào):
4.檢查ruby源并移除翘单。
(1)、檢查ruby源
$ gem sources -l
檢查ruby源,結(jié)果如下:
因?yàn)镽uby環(huán)境默認(rèn)的的軟件源rubygems.org被屏蔽了蹦渣,國(guó)內(nèi)那面永遠(yuǎn)需要翻 越的墻哄芜,你懂的~,我們需要來(lái)修改更換源柬唯,把源切換至ruby-china认臊;
(2)、移除掉原有的源
$ gem sources - - remove https://rubygems.org/
(3)锄奢、添加國(guó)內(nèi)最新的源失晴。ruby-china
$ gem sources -a https://gems.ruby-china.com
這里注意一下https://gems.ruby-china.org 已經(jīng)不能使用。后綴要改成com
(4)拘央、檢查是否添加成功
$ gem sources -l
到這里就已經(jīng)把Ruby環(huán)境安裝成功涂屁!接下來(lái)需要對(duì)cocoapods進(jìn)行安裝。
5. 安裝CocoaPods
$ gem install -n /usr/local/bin cocoapods
6. 查看是否安裝成功并更新
(1)查看是否成功
$ pod - - version
查看pod版本
(2) 更新Podspec索引文件灰伟,創(chuàng)建本地索引庫(kù),如果沒(méi)有報(bào)錯(cuò)拆又,就說(shuō)明一切安裝成功了;這個(gè)過(guò)程需要一些時(shí)間栏账。
$ pod setup
三帖族、CocoaPods的使用
1、用Xcode創(chuàng)建(打開(kāi))一個(gè)工程挡爵,并創(chuàng)建podfile配置文件
(1)竖般、進(jìn)入項(xiàng)目目錄
$ cd ~
在沒(méi)有導(dǎo)入庫(kù)時(shí),項(xiàng)目中import庫(kù) 會(huì)報(bào)錯(cuò)
(2)茶鹃、創(chuàng)建Podfile文件
$ touch Podfile
創(chuàng)建一個(gè)podfile文件涣雕,然后打開(kāi)編輯;
或是使用$ vi podfile
輸入i
進(jìn)入編輯艰亮,編輯完成后按 esc 然后輸入:wq
按回車鍵 ,保存并退出胞谭。
(3)垃杖、編輯Podfile文件。
我們可以在Podfile文件中寫入需要用到的第三方庫(kù)按如下格式:
platform :ios, '9.0'
use_frameworks!
target 'TestDemo' do
pod 'Alamofire', '~> 4.0.1'
pod 'Kingfisher', '~> 3.1.1'
end
Swift的pod文件在于use_frameworks! 這一句是必須的丈屹,作用是把三方庫(kù)打包成靜態(tài)庫(kù),而oc是不需要的伶棒。
另外旺垒,也可在github中找到所需要的庫(kù),里面有podfile格式內(nèi)容
2肤无、安裝依賴庫(kù)
$ pod install
(后續(xù)添加框架可直接pod update)
建議使用:
$ pod install --verbose --no-repo-update
$ pod update --verbose --no-repo-update
當(dāng)執(zhí)行標(biāo)準(zhǔn)命令的時(shí)候會(huì)升級(jí)CocoaPods的spec倉(cāng)庫(kù)先蒋,加一個(gè)參數(shù)可以省略這一步,然后速度就會(huì)提升不少宛渐。
若出現(xiàn)以下錯(cuò)誤時(shí)竞漾,在Podfile 文件中添加如下一行內(nèi)容:
這是由于你多次移動(dòng)你項(xiàng)目的路徑,以至于再次update你的Podfile項(xiàng)目時(shí)窥翩,出現(xiàn)找不到工程路徑的問(wèn)題xcodeproj ‘你的工程名.xcodeproj’
3业岁、進(jìn)入項(xiàng)目時(shí),再次打開(kāi)寇蚊,編譯報(bào)錯(cuò)就消失了笔时。安裝完成!
CocoaPods工作原理
CocoaPods的工作主要是通過(guò)ProjectName.xcworkspace來(lái)組織的仗岸,在打開(kāi)ProjectName.xcworkspace文件后允耿,發(fā)現(xiàn)Xcode會(huì)多出一個(gè)Pods工程。它是將所有的依賴庫(kù)都放到名為Pods項(xiàng)目中扒怖,然后讓主項(xiàng)目依賴Pods項(xiàng)目较锡,就這樣,源碼管理工作都從主項(xiàng)目移到了Pods項(xiàng)目中盗痒。