CocoaPods安裝和使用事項

一羹膳、什么是CocoaPods

CocoaPods是一個第三方庫管理工具梗劫,通過它我們可以為項目添加被稱為Pods的依賴庫(前提是這些類庫必須是CocoaPods本身多支持的)丛楚,并且可以很方便的管理版本在使用

CocoaPods之前届慈,開發(fā)項目需要用到第三方開源庫的時候徒溪,我們需要

1.把開源庫的源代碼復(fù)制到項目中或者是將SDK直接導(dǎo)入到工程中

2.添加一些依賴框架和動態(tài)庫

3.設(shè)置-ObjC,-fno-objc-arc等參數(shù)

4.管理他們的更新

在使用CocoaPods后金顿,我們只需要把用到的開源庫放到一個名為Podfile的文件中臊泌,然后執(zhí)行終端命令就會自動將這些第三方開源庫的源碼下載下來,并且為我們的工程設(shè)置好響應(yīng)的系統(tǒng)依賴和編譯參數(shù)揍拆。

二渠概、CocoaPods的原理

CocoaPods的原理是將所有的依賴庫都放到另一個名為Pods的項目中,然后讓主項目依賴Pods項目礁凡,這樣高氮,源碼管理工作都從主項目移到了Pods項目中。Pods項目最終會編譯成一個名為libPods.a的文件顷牌,主項目只需要依賴這個.a文件即可

三剪芍、CocoaPods的安裝(重點)

我們通過Mac自帶的ruby環(huán)境進(jìn)行安裝CocoaPods

步驟如下:

1.查看gem是否為最新版本

輸入命令:sudo gem update --system

執(zhí)行命令后如果顯示:Latest version currently installed. Aborting,說明當(dāng)前已經(jīng)是最新版本窟蓝,無需再升級罪裹。如果顯示RubyGems system software updated,說明升級成功

2.輸入命令:sudo gem install cocoapods

執(zhí)行完這句命令后如果報錯:

問題一:

解決辦法:輸入命令:sudo gem install -n /usr/local/bin cocoapods

問題二:

這是因為ruby的軟件源rubygems.org因為使用亞馬遜的云服務(wù)运挫,被我天朝屏蔽了状共,需要更新一下ruby的源,步驟如下:

1)gem sources -l? 查看當(dāng)前ruby的源

2)gem sources --remove https://rubygems.org/? 移除rubyhttps://rubygems.org/

3)gem sources -a https://ruby.taobao.org/? (替換ruby為https://gems.ruby-china.com/? 如果淘寶的失效使用此鏈接)

4)gem sources -l 再次查看ruby源是否替換成功

3.重新執(zhí)行安裝下載命令:sudo gem install cocoapods

(如果提示沒權(quán)限使用:sudo gem install -n /usr/local/bin cocoapods)

4.進(jìn)行安裝谁帕,執(zhí)行命令:pod setup

(當(dāng)安裝多個xcode 出錯時候運行下列:sudo xcode-select -switch /Applications/Xcode最高版本的xcode版本號.app/Contents/Developer

例如:裝了Xcode7,Xcode8,Xcode9.0—>sudo xcode-select -switch /Applications/Xcode9.0.app/Contents/Developer)

四峡继、CocoaPods的使用

1、新建一個工程

2匈挖、打開終端碾牌,定位到工程根目錄下


3.執(zhí)行命令:touch Podfile(創(chuàng)建一個Podfile的文件康愤,不能換成其他的名字,也可以在工程根目錄下直接創(chuàng)建)


{3.等效于: pod init}


4.執(zhí)行命令:vi Podfile (打開Podfile文件)

Podfile文件的格式為:platform :ios, '7.0'? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

5.搜索需要集成的庫舶吗,執(zhí)行命令:pod search 需要搜索的庫

6.在文件中添加要使用的第三方庫征冷,再次打開Podfile文件

執(zhí)行命令:pod ‘AFNetworking’,‘~>2.5.3’

(4,5誓琼,6等效于platform :ios, '7.0'

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? target 'MyApp' do

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? pod 'AFNetworking', '~> 2.6'

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? pod 'ORStackView', '~> 3.0'

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? pod 'SwiftyJSON', '~> 2.3'

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end

(然后保存退出检激。vim環(huán)境下,保存退出命令是:

第一步----> ?按'esc鍵

第二部----> ?:wq或者shift+z+z

7.使用pod install安裝第三方庫

執(zhí)行完命令后出現(xiàn):Updating local specs repositories說明安裝成功

8.如果要卸載CocoaPods腹侣,則執(zhí)行命令:sudo gem uninstall cocoapods

五叔收、以后使用的時候切記如下兩點:

1.從此以后需要使用Cocoapods生成的 .xcworkspace文件來打開工程,而不是使用以前的.xcodeproj文件

2.每次更改了Podfile文件筐带,都需要重新執(zhí)行一次pod update命令

3.當(dāng)執(zhí)行pod install之后今穿,除了Podfile,還會生成一個名為Podfile.lock的文件伦籍,它會鎖定當(dāng)前各依賴庫的版本蓝晒,之后即使多次執(zhí)行pod install也不會更改版本,只有執(zhí)行pod update才會改變Podfile.lock.在多人協(xié)作的時候帖鸦,這樣可以防止第三方庫升級時候造成大家各自的第三方庫版本不一致芝薇。所以在提交版本的時候不能把它落下,也不要添加到.gitignore中.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末作儿,一起剝皮案震驚了整個濱河市洛二,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌攻锰,老刑警劉巖晾嘶,帶你破解...
    沈念sama閱讀 223,002評論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異娶吞,居然都是意外死亡垒迂,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評論 3 400
  • 文/潘曉璐 我一進(jìn)店門妒蛇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來机断,“玉大人,你說我怎么就攤上這事绣夺±艏椋” “怎么了?”我有些...
    開封第一講書人閱讀 169,787評論 0 365
  • 文/不壞的土叔 我叫張陵陶耍,是天一觀的道長奋蔚。 經(jīng)常有香客問我,道長烈钞,這世上最難降的妖魔是什么旺拉? 我笑而不...
    開封第一講書人閱讀 60,237評論 1 300
  • 正文 為了忘掉前任产上,我火速辦了婚禮棵磷,結(jié)果婚禮上蛾狗,老公的妹妹穿的比我還像新娘。我一直安慰自己仪媒,他們只是感情好沉桌,可當(dāng)我...
    茶點故事閱讀 69,237評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著算吩,像睡著了一般留凭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上偎巢,一...
    開封第一講書人閱讀 52,821評論 1 314
  • 那天蔼夜,我揣著相機與錄音,去河邊找鬼压昼。 笑死求冷,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的窍霞。 我是一名探鬼主播匠题,決...
    沈念sama閱讀 41,236評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼但金!你這毒婦竟也來了韭山?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,196評論 0 277
  • 序言:老撾萬榮一對情侶失蹤冷溃,失蹤者是張志新(化名)和其女友劉穎钱磅,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體似枕,經(jīng)...
    沈念sama閱讀 46,716評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡盖淡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,794評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了菠净。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片禁舷。...
    茶點故事閱讀 40,928評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖毅往,靈堂內(nèi)的尸體忽然破棺而出牵咙,到底是詐尸還是另有隱情,我是刑警寧澤攀唯,帶...
    沈念sama閱讀 36,583評論 5 351
  • 正文 年R本政府宣布洁桌,位于F島的核電站,受9級特大地震影響侯嘀,放射性物質(zhì)發(fā)生泄漏另凌。R本人自食惡果不足惜谱轨,卻給世界環(huán)境...
    茶點故事閱讀 42,264評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望吠谢。 院中可真熱鬧土童,春花似錦、人聲如沸工坊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,755評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽王污。三九已至罢吃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間昭齐,已是汗流浹背尿招。 一陣腳步聲響...
    開封第一講書人閱讀 33,869評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留阱驾,地道東北人就谜。 一個月前我還...
    沈念sama閱讀 49,378評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像啊易,于是被迫代替她去往敵國和親吁伺。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,937評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 項目組件化租谈、平臺化是技術(shù)公司的共同目標(biāo)篮奄,越來越多的技術(shù)公司推崇使用pod管理第三方庫以及私有組件,一方面使項目架構(gòu)...
    swu_luo閱讀 21,900評論 0 39
  • CocoaPods 是什么割去? CocoaPods 是一個負(fù)責(zé)管理 iOS 項目中第三方開源庫的工具窟却。CocoaPo...
    朝洋閱讀 25,699評論 3 51
  • 什么是cocoapods CocoaPods是一個用來幫助我們管理第三方依賴庫的工具。它可以解決庫與庫之間的依賴關(guān)...
    VV木公子閱讀 7,072評論 0 7
  • Ruby 安裝 要安裝cocospods 首先需要安裝ruby呻逆,可以先安裝xcode夸赫,再安裝macport ,最后...
    山天大畜閱讀 1,863評論 0 1
  • 一. CocoaPods的介紹 什么是CocoaPods咖城?CocoaPods是一個負(fù)責(zé)管理iOS項目中第三方開源庫...
    輝712閱讀 3,946評論 0 7