iOS 之CocoaPods

為什么要使用CocoaPods瞧剖?

第三方框架使用,手動導(dǎo)入時可免,工程文件的配置會很麻煩抓于。在配置buildphases和linkerflags過程中,會引起許多人為因素的錯誤。CocoaPods 簡化了這一切,它能夠自動配置編譯選項浇借。?

CocoaPods的原理

它是將所有的依賴庫都放到另一個名為Pods項目中,然后 讓主項目依賴Pods項目,這樣,源碼管理工作都從主項目移到了Pods項目中

?1捉撮、Pods項目最終會編譯成一個名為libPods.a的文件,主項目只需要依賴這個.a 文件即可。

2妇垢、對于資源文件,CocoaPods提供了一個名為Pods-resources.sh的bash腳本, 該腳本在每次項目編譯的時候都會執(zhí)行,將第三方庫的各種資源文件復(fù)制到目標(biāo)目錄中巾遭。?

3、CocoaPods通過一個名為Pods.xcconfig的文件來在編譯時設(shè)置所有的依賴和參數(shù)闯估。?

一灼舍、CocoaPods安裝:

?Mac下都自帶ruby,使用ruby的gem命令即可下載安裝:?

》安裝CocoaPods

sudo gem install cocoapods

》設(shè)置 pod 倉庫

pod setup

》測試

pod --version?

》卸載CocoaPods

sudo gem uninstall cocoapods

注意:

?》如果gem太老可能會有問題,所以安裝之前最好升級一下

gem sudo gem update --system


》ruby的軟件源rubygems.org使用的亞馬遜的云服務(wù)被墻了,所以需要更新一下ruby的源,如下代碼將官方的ruby源替換成國內(nèi)淘寶源

gem sources --remove?https://rubygems.org/gem sources -a?http://ruby.taobao.org/

gem sources -l

》pod setup在執(zhí)行時,會輸出Setting up CocoaPods master repo,但是會等待比 較久的時間。這步其實是Cocoapods在將它的信息下載到?~/.cocoapods目錄 下,如果你等太久,可以試著cd到那個目錄,用du -sh *來查看下載進度涨薪。你 也可以參考本文接下來的使用cocoapods的鏡像索引一節(jié)的內(nèi)容來提高下載速 度骑素。

》使用CocoaPods的鏡像索引所有的項目的Podspec文件都托管在https://github.com/CocoaPods/Specs。第一 次執(zhí)行pod setup時,CocoaPods會將這些podspec索引文件更新到本地的~/.cocoapods/目錄下,這個索引文件比較大,有100M左右刚夺。所以第一次更新 時非常慢砂豌。

為了提高下載速度, 可以將文件托管地址從github替換為國內(nèi)oschina,這樣 會快很多厢岂。如下操作就可以將github替換為國內(nèi)oschina

pod repo remove master

pod repo add master?

http://git.oschina.net/akuandev/Specs.git

pod repo update

二、CocoaPods使用:

使用時需要新建一個名為

Podfile的文件

>1.利用vim創(chuàng)建Podfile阳距。 注意:Podfile文件應(yīng)該和你的工程文件.xcodeproj在 同一個目錄下

vim Podfile

>2.將依賴的庫名字依次列在文件中

platform :ios

pod 'JSONKit', '~> 1.4'

pod'Reachability', '~>3.0.0'

pod'AFNetworking', '2.0.0'?

pod 'RegexKitLite'?

>3.保存并退出 按下esc,然后輸入:wq?

>4.利用CocoPods下載類庫pod install

注意:

1.利用CocoPods管理類庫后,?以后打開項目就用xxxx.xcworkspace?打開,而不是 之前的.xcodeproj文件

2.每次更改了Podfile文件,你需要重新執(zhí)行一次pod update命令塔粒。

3.關(guān)于.gitignore,當(dāng)你執(zhí)行pod install之后,除了Podfile外,CocoaPods還會生成一個名為Podfile.lock的文件,你不應(yīng)該把這個文件加入到.gitignore中筐摘。因為Podfile.lock會鎖定當(dāng)前各依賴庫的版本,之后如果多次執(zhí)行pod install?不會更改版本,要pod update才會改Podfile.lock了卒茬。這樣多人協(xié)作的時候,可以防止第三方庫升級時造成大家各自的第三方庫版本不一致。

4. CocoaPods在執(zhí)行pod install和pod update時,會默認(rèn)先更新一次CocoPods的spec倉庫索引咖熟。使用--no-repo-update參數(shù)可以禁止其做索引更新操作

pod install --no-repo-update

pod update --no-repo-update

三圃酵、查找第三方庫 你如果不知道cocoaPods管理的庫中,是否有你想要的庫,那么你可以通過pod search命令進行查找,以下是我用pod search json查找到的所有可用的庫:

pod search AFNetworking

四:參考文獻?

用CocoaPods做iOS程序的依賴管理:

CocoaPods最佳實踐:

極速化 CocoaPods:

深入理解CocoaPods:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市馍管,隨后出現(xiàn)的幾起案子郭赐,更是在濱河造成了極大的恐慌,老刑警劉巖确沸,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捌锭,死亡現(xiàn)場離奇詭異,居然都是意外死亡罗捎,警方通過查閱死者的電腦和手機观谦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來桨菜,“玉大人豁状,你說我怎么就攤上這事〉沟茫” “怎么了泻红?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長霞掺。 經(jīng)常有香客問我承桥,道長,這世上最難降的妖魔是什么根悼? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任凶异,我火速辦了婚禮,結(jié)果婚禮上挤巡,老公的妹妹穿的比我還像新娘剩彬。我一直安慰自己,他們只是感情好矿卑,可當(dāng)我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布喉恋。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪轻黑。 梳的紋絲不亂的頭發(fā)上糊肤,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天,我揣著相機與錄音氓鄙,去河邊找鬼馆揉。 笑死,一個胖子當(dāng)著我的面吹牛抖拦,可吹牛的內(nèi)容都是我干的升酣。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼态罪,長吁一口氣:“原來是場噩夢啊……” “哼噩茄!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起复颈,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤绩聘,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后耗啦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體凿菩,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年芹彬,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片叉庐。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡舒帮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出陡叠,到底是詐尸還是另有隱情玩郊,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布枉阵,位于F島的核電站译红,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏兴溜。R本人自食惡果不足惜侦厚,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望拙徽。 院中可真熱鬧刨沦,春花似錦、人聲如沸膘怕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至来破,卻和暖如春篮灼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背徘禁。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工诅诱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人晌坤。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓逢艘,卻偏偏與公主長得像,于是被迫代替她去往敵國和親骤菠。 傳聞我的和親對象是個殘疾皇子它改,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,577評論 2 353

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