Cocoa pods配置及注意事項(xiàng)

一. 什么是 Cocoapods师崎?

CocoaPods是一個(gè)負(fù)責(zé)管理iOS項(xiàng)目中第三方開源庫(kù)的工具,CocoaPods的項(xiàng)目源碼在Github上管理.
開發(fā)iOS項(xiàng)目不可避免地要使用第三方開源庫(kù)砂豌,CocoaPods的出現(xiàn)使得我們可以節(jié)省設(shè)置和更新第三方開源庫(kù)的時(shí)間,在iOS開發(fā)中經(jīng)常會(huì)用到第三方庫(kù)如AFNetworking,SDWebImage等竣蹦,在使用第三方庫(kù)時(shí),你除了要導(dǎo)入源碼外渺鹦,集成這些依賴庫(kù)還需要我們手動(dòng)去配置舀透,還有當(dāng)這些第三方庫(kù)發(fā)生了更新,還需要手動(dòng)去更新項(xiàng)目,這就顯得非常麻煩.CocoaPods就是為了解決這個(gè)問題而生的,通過CocoaPods密任,我們可以將第三方的依賴庫(kù)統(tǒng)一管理起來颜启,配置和更新只需要通過簡(jiǎn)單的幾行命令即可完成.

二. 安裝cocoapods

(1) 升級(jí)Ruby (cocoapods使用Ruby編寫)

$sudo gem update —system

(2)更新Ruby源

首先,檢查一下你的ruby源
$ gem sources -l
默認(rèn)情況下浪讳,終端應(yīng)該返回如下信息:
*** CURRENT SOURCES ***

https://rubygems.org/

當(dāng)然這個(gè)源在墻內(nèi)是訪問不到的,因此我們需要?jiǎng)h除此源并添加一個(gè)可以在國(guó)內(nèi)訪問到的鏡像

$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/

知道你按照網(wǎng)上寫的為什么不對(duì)嗎缰盏?因?yàn)槟阍诰W(wǎng)上搜到的基本上都是訪問的淘寶鏡像(如下語(yǔ)句) ---不要執(zhí)行!!口猜!

$ gem sources -a http://ruby.taobao.org/

然而淘寶卻已經(jīng)將RubyGems鏡像的管理工作交由RubyChina負(fù)責(zé)

banben.png

并明確指出讓我們使用https://gems.ruby-china.org/
此刻再次查看ruby源

$ gem sources -l
終端返回如下信息:
*** CURRENT SOURCES ***

https://gems.ruby-china.org/

(3)安裝cocoapods

$ sudo gem install cocoapods
$ pod setup

三. Cocoapods使用

(1) 創(chuàng)建工程cocoapodsDemo
(2) 找到項(xiàng)目所在路徑:

$ cd /users/xbk/Desktop/cocoapodsDemo

(3) 搜索需要的庫(kù)(將配置信息(pod 'AFNetworking', '~> 3.1.0')復(fù)制负溪,然后依次按esc wq鍵退出):

$ pod search afnetworking

(4) 建立podfile文件:

$ touch podfile

(5) 打開podfile文件:

$ open -e podfile

(6) 在打開的podfile中配置文本信息:(復(fù)制第三步查詢到的 pod 'AFNetworking', '~> 3.1.0' )

platform:ios,‘7.0’
target '項(xiàng)目名' do
pod 'AFNetworking', '~> 3.1.0'
end

(7) 在中斷輸入:

$ pod install

(8) 繼續(xù)添加別的第三方庫(kù)
依次執(zhí)行(3)济炎、(5)川抡、(6)、(7)步.
(9) 刪除cocoapods中的一個(gè)或多個(gè)類庫(kù)

platform:ios须尚,‘7.0’
target '項(xiàng)目名' do
pod 'AFNetworking', '~> 3.1.0'
pod 'Masonry', '~> 1.0.2'(直接刪除該行崖堤,如果想降低版本,直接修改1.0.2為你想要的版本)
end

然后執(zhí)行pod install 發(fā)現(xiàn)Masonry被成功刪除

(10) 更新pods中的第三方庫(kù)文件

$ pod update

四. 刪除cocoapods

刪除工程文件夾下的Podfile耐床、Podfile.lock及Pods文件夾
刪除xcworkspace文件
使用xcodeproj文件打開工程密幔,刪除Frameworks組下的 Pods.xcconfig及l(fā)ibPods.a引用
在工程設(shè)置中的Build Phases下刪除Check Pods Manifest.lock及Copy Pods Resources

五. 使用cocoapods過程中你可能遇到的問題

(1) podfile升級(jí)之后到最新版本為1.1.1后,pod里的內(nèi)容必須明確指出所用第三方庫(kù)的target(項(xiàng)目名)咙咽,否則會(huì)出現(xiàn)The dependency '' is not used in any concrete target這樣的錯(cuò)誤
以前錯(cuò)誤的姿勢(shì):

platform:ios老玛,'7.0'
pod 'AFNetworking', '~> 3.1.0'
pod 'Masonry', '~> 1.0.2'

現(xiàn)在正確的姿勢(shì)應(yīng)該是:

platform:ios,'7.0'
target '項(xiàng)目名' do
pod 'AFNetworking', '~> 3.1.0'
pod 'Masonry', '~> 1.0.2'
end

(2) 使用Cocoapods 導(dǎo)入第三方的資源時(shí)钧敞,出現(xiàn)如下警告:

Your Podfile has had smart quotes sanitised. To avoid issues in the future, you should not use TextEdit for editing it. If you are not using TextEdit, you should turn off smart quotes in your editor of choice.
先看看錯(cuò)誤的寫法

platform:ios蜡豹,'7.0'
target ‘項(xiàng)目名’ do(看這里,拼音(文本)浮下的單引號(hào))
pod 'AFNetworking', '~> 3.1.0'
pod 'Masonry', '~> 1.0.2'
end

正確的寫法

platform:ios溉苛,'7.0'
target '項(xiàng)目名' do(看這里镜廉,英文符下的單引號(hào))
pod 'AFNetworking', '~> 3.1.0'
pod 'Masonry', '~> 1.0.2'
end

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市愚战,隨后出現(xiàn)的幾起案子娇唯,更是在濱河造成了極大的恐慌,老刑警劉巖寂玲,帶你破解...
    沈念sama閱讀 219,110評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件塔插,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡拓哟,警方通過查閱死者的電腦和手機(jī)想许,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來断序,“玉大人流纹,你說我怎么就攤上這事∥ナ” “怎么了漱凝?”我有些...
    開封第一講書人閱讀 165,474評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)诸迟。 經(jīng)常有香客問我茸炒,道長(zhǎng)愕乎,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,881評(píng)論 1 295
  • 正文 為了忘掉前任扣典,我火速辦了婚禮妆毕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘贮尖。我一直安慰自己笛粘,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評(píng)論 6 392
  • 文/花漫 我一把揭開白布湿硝。 她就那樣靜靜地躺著薪前,像睡著了一般。 火紅的嫁衣襯著肌膚如雪关斜。 梳的紋絲不亂的頭發(fā)上示括,一...
    開封第一講書人閱讀 51,698評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音痢畜,去河邊找鬼垛膝。 笑死,一個(gè)胖子當(dāng)著我的面吹牛丁稀,可吹牛的內(nèi)容都是我干的吼拥。 我是一名探鬼主播,決...
    沈念sama閱讀 40,418評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼线衫,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼凿可!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起授账,我...
    開封第一講書人閱讀 39,332評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤枯跑,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后白热,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體敛助,經(jīng)...
    沈念sama閱讀 45,796評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評(píng)論 3 337
  • 正文 我和宋清朗相戀三年屋确,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了辜腺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,110評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡乍恐,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出测砂,到底是詐尸還是另有隱情茵烈,我是刑警寧澤,帶...
    沈念sama閱讀 35,792評(píng)論 5 346
  • 正文 年R本政府宣布砌些,位于F島的核電站呜投,受9級(jí)特大地震影響加匈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜仑荐,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評(píng)論 3 331
  • 文/蒙蒙 一雕拼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧粘招,春花似錦啥寇、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至袍冷,卻和暖如春磷醋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背胡诗。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工邓线, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人煌恢。 一個(gè)月前我還...
    沈念sama閱讀 48,348評(píng)論 3 373
  • 正文 我出身青樓骇陈,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親症虑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子缩歪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評(píng)論 2 355

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

  • 項(xiàng)目組件化谍憔、平臺(tái)化是技術(shù)公司的共同目標(biāo),越來越多的技術(shù)公司推崇使用pod管理第三方庫(kù)以及私有組件习贫,一方面使項(xiàng)目架構(gòu)...
    swu_luo閱讀 21,787評(píng)論 0 39
  • ——謹(jǐn)以此文獻(xiàn)給所有深陷養(yǎng)老恐慌的父母和正在被父愛母愛壓迫的成年寶寶逛球。 前日苫昌,來自我社科同學(xué)全寶寶的一則朋友圈引發(fā)...
    王文昭閱讀 1,015評(píng)論 0 0
  • 引出:想對(duì)每個(gè)增加數(shù)據(jù)給寫條日志颤绕。 Django中提供了“信號(hào)調(diào)度”,用于在框架執(zhí)行操作時(shí)解耦祟身。通俗來講奥务,就是一些...
    廖馬兒閱讀 556評(píng)論 0 0
  • 朵朵說 7月到來氯葬,假期來啦!婉陷!城市已經(jīng)選好帚称?機(jī)票已經(jīng)訂好官研?在你的目的地里,別忘記加上博物館~ 朵朵貼心的為你整理出...
    大觀家庭閱讀 275評(píng)論 0 0