CocoaPods的安裝和使用

一、什么是CocoaPods

當(dāng)我們開發(fā)iOS應(yīng)用的時候,不可避免的要使用到很多第三方庫罚缕,如SDWebImage,AFNetWorking怎静。而有些第三方庫又依賴其他的第三方庫邮弹。我們需要將他們一個個的下載下來加到工程里。當(dāng)項目開發(fā)完了蚓聘,我們還要記得定期去挨個查一下腌乡,這些庫是不是需要更新了。以上兩個問題手動去做非常麻煩夜牡,有沒有什么工具能夠自動幫助我們完成這個事情呢与纽?CocoaPods就是這樣一個工具。通過它,我們可以一行命令安裝渣锦、更新所需的第三方庫硝岗。
絕大多數(shù)知名的第三方庫都會支持CocoaPods氢哮,通過CocoaPods安裝的第三方庫都是標(biāo)準(zhǔn)庫袋毙,避免自己去網(wǎng)上搜索找到的庫或者版本不是最新的,或者被人修改過冗尤。
CocoaPods的缺陷
當(dāng)我們需要對第三方庫做修改以適應(yīng)自己的項目時听盖,CocoaPods會帶來很大的麻煩,因為你修改過后裂七,通過CocoaPods更新后皆看,修改的記錄就會被覆蓋。當(dāng)遇到這種情況時背零,這個第三方庫只有自己手動加入工程中了腰吟。

二、安裝

  1. 更換鏡像地址
    安裝CocoaPods時我們要訪問cocoapods.org徙瓶,該網(wǎng)站被墻了毛雇,之前淘寶的Ruby鏡像也不更新了,使用最新的支持鏡像
gem sources --remove https://rubygems.org/
gem sources -a https://gems.ruby-china.org/

稍等一會侦镇,就會提示更新成功灵疮。如果提示失敗,多試幾次就可以了壳繁。
使用下面的命令查看是否更換鏡像成功

gem sources -l
  1. 更新ruby
    如果安裝了XCode震捣,則已經(jīng)安裝了ruby環(huán)境,使用下面命令更新ruby
sudo gem update --system

稍等一會就會提示安裝成功

  1. 安裝CocoaPods
sudo gem install cocoapods

在10.11中闹炉,執(zhí)行上句會出現(xiàn)

ERROR:  While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod

此時改用此語句

sudo gem install -n /usr/local/bin cocoapods

輸入密碼蒿赢,稍等一會,等進(jìn)程結(jié)束后渣触,輸入

pod setup 
  1. 搜索庫
    搜索AFNetworking羡棵,來檢測是否安裝成功
pod search AFNetWorking

在我的電腦上搜索到的結(jié)果如下


搜索結(jié)果.png

能夠搜索到結(jié)果,說明安裝成功昵观。即可開始下面的步驟了

三晾腔、使用

使用CocoaPods,需要一個Podfile文件啊犬,這個文件會配置所需的第三方庫

  1. 創(chuàng)建測試工程
    使用XCode創(chuàng)建一個測試工程cocoaPodsTest
  2. 進(jìn)入工程所在目錄


    project.png
  3. 編輯Podfile
    在工程目錄中灼擂,在終端中輸入命令
vim Podfile

輸入a,進(jìn)入編輯模式
加入AFNetworking第三方庫 pod 'SDWebImage', '3.7.3'
輸入完后,按ESC鍵觉至,輸入:wq,保存并退出編輯

  1. 查看Podfile
    進(jìn)入工程目錄剔应,打開Podfile文件,或者用命令查看如下cat Podfile
    pod.png

    其中第一個單引號里是第三方庫的名字,第二個單引號里的是這個第三方庫的版本號峻贮,這兩個參數(shù)都可以通過pod search命令來查看席怪。

詳細(xì)說明可以查看官方文檔https://guides.cocoapods.org/using/the-podfile.html
http://guides.cocoapods.org/using/using-cocoapods.html
以下是官網(wǎng)引用的關(guān)于版本號的說明

'> 0.1' Any version higher than 0.1
'>= 0.1' Version 0.1 and any higher version
'< 0.1' Any version lower than 0.1
'<= 0.1' Version 0.1 and any lower version
In addition to the logic operators CocoaPods has an optimistic operator ~>:

'~> 0.1.2' Version 0.1.2 and the versions up to 0.2, not including 0.2 and higher
'~> 0.1' Version 0.1 and the versions up to 1.0, not including 1.0 and higher
'~> 0' Version 0 and higher, this is basically the same as not having it.
  1. 安裝SDWebImage
    還是在當(dāng)前工程目錄下,如果你已經(jīng)用XCode打開了工程纤控,那么先將工程關(guān)閉挂捻,然后輸入pod install
    稍等一會,安裝成功后界面如下
    install.png
  2. 打開工程
    在上一步安裝成功后船万,可以看到界面提醒

Please close any current Xcode sessions and use
cocoaPodsTest.xcworkspace for this project from now on.

我們以后就要通過cocoaPodsTest.xcworkspace來打開工程了刻撒。
輸入open cocoaPodsTest.xcworkspace打開工程,我們看到在工程項目列表里多出了一個pods的項目耿导,現(xiàn)在你就可以使用SDWebImage了

xcodeproject.png

到此cocoaPods安裝成功声怔,以后需要導(dǎo)入新的工程,或者需要更新版本舱呻,修改Podfile即可

  1. 對于下載下來的工程醋火,如果發(fā)現(xiàn)工程里有Podfile文件,可以先輸入pod update,再輸入pod install,即可安裝項目所需庫
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末箱吕,一起剝皮案震驚了整個濱河市芥驳,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌殖氏,老刑警劉巖晚树,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異雅采,居然都是意外死亡爵憎,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進(jìn)店門婚瓜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來宝鼓,“玉大人,你說我怎么就攤上這事巴刻∮拚。” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵胡陪,是天一觀的道長沥寥。 經(jīng)常有香客問我,道長柠座,這世上最難降的妖魔是什么邑雅? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮妈经,結(jié)果婚禮上淮野,老公的妹妹穿的比我還像新娘捧书。我一直安慰自己,他們只是感情好骤星,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布经瓷。 她就那樣靜靜地躺著,像睡著了一般洞难。 火紅的嫁衣襯著肌膚如雪舆吮。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天廊营,我揣著相機(jī)與錄音歪泳,去河邊找鬼。 笑死露筒,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的敌卓。 我是一名探鬼主播慎式,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼趟径!你這毒婦竟也來了瘪吏?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蜗巧,失蹤者是張志新(化名)和其女友劉穎掌眠,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體幕屹,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡蓝丙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了望拖。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片渺尘。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖说敏,靈堂內(nèi)的尸體忽然破棺而出鸥跟,到底是詐尸還是另有隱情,我是刑警寧澤盔沫,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布医咨,位于F島的核電站,受9級特大地震影響架诞,放射性物質(zhì)發(fā)生泄漏拟淮。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一侈贷、第九天 我趴在偏房一處隱蔽的房頂上張望惩歉。 院中可真熱鬧等脂,春花似錦、人聲如沸撑蚌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽争涌。三九已至粉楚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間亮垫,已是汗流浹背模软。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留饮潦,地道東北人燃异。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像继蜡,于是被迫代替她去往敵國和親回俐。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359

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