CocoaPods學習筆記

作為一個入門不久的初級開發(fā)人員铭拧,本著一個自我知識整理歸檔地目的,概括性地介紹下 CocoaPods 的安裝與使用呕臂。
此文整理于2016年6月肪跋。

CocoPods簡介

CocoaPods 是針對 Swift 和 Objective-C 項目進行管理添加依賴的一個工具。它擁有一萬八千多個類庫來優(yōu)雅地拓展項目谜洽,管理著 Swift 和 Objective-C 項目的第三方庫引入褥琐。

官網(wǎng)地址:CocoaPods官網(wǎng)

安裝

由于 CocoaPods 是基于 Ruby 環(huán)境下工作的晤郑,故需要確保系統(tǒng)中已經(jīng)設置完畢 Ruby 環(huán)境造寝。
一般條件下 Mac 自備 Ruby ,故一般不需要設置析显,除非曾進行過卸載谷异,請自行 Google 锦聊。

1.打開Terminal(終端),移除官方源尺上。

gem sources --remove https://rubygems.org/

2.添加所需源怎抛,采取下方任意一個指令芽淡。

gem sources --add https://gems.ruby-china.org
gem sources -a https://gems.ruby-china.org

為什么不使用淘寶的gem源挣菲,原因是其已經(jīng)不可接受外界維護了。詳見RubyGems鏡像

3.確保所需源已添加唉窃,執(zhí)行下面指令纹笼。

gem sources -l

顯示效果如下,則證明添加成功廷痘。

*** CURRENT SOURCES ***

https://gems.ruby-china.org

4.進行 CocoaPods 安裝,輸入指令后輸入計算機密碼開始安裝元暴。

sudo gem install cocoapods

5.安裝完成茉盏,鍵入配置命令,如果安裝無誤鸠姨,便可以進入使用階段讶迁。

pod setup

使用

1.CocoaPods 已經(jīng)安裝完畢,當需要進行第三方類庫導入時巍糯,利用終端指令訪問到項目路徑下祟峦,進行 CocoaPods 初始化操作。

pod init

2.進行初始化命令后, 生成一個Podfile文件惰聂,采取文本編輯器(Vim咱筛、Sublime Text等等)對其進行信息編輯,打開后顯示界面如下:

# Uncomment this line to define a global platform for your project
// 取消注釋該句子, 證明你需要為項目使用一個通用平臺
# platform :ios, '9.0'

// 如果你需要導入第三方庫, 直接在此編輯信息, 如
pod 'AFNetworking', '~> 3.0'

target 'xxx' do
  # Uncomment this line if you're using Swift or would like to use dynamic frameworks
  // 取消注釋該句子, 如果你正在使用Swift或者需要使用動態(tài)框架的話
  # use_frameworks!

  # Pods for xxx

  target 'xxxTests' do
    inherit! :search_paths
    # Pods for testing
  end

end

3.信息編輯完畢后, 進行庫安裝溉愁。

  • 不更新本地庫信息直接安裝饲趋,優(yōu)點是安裝快奕塑,缺點是如果有新庫發(fā)布,安裝將失敗盟猖,安裝失敗后需要使用獲取最新庫信息安裝指令换棚。
pod install --no-repo-update
  • 根據(jù)Podfile信息進行安裝式镐,缺點是安裝速度慢娘汞,優(yōu)點是能保證當前庫可用你弦。
pod install

4.第三方庫導入完畢,這之后打開項目就應該進入xxx.xcworkspace鳖目,而不再是xxx.xcodeproj
當然缤弦,之后我們可能會添加更多第三方庫,當Podfile文件進行修改狸捅,需要執(zhí)行以下命令中的一個尘喝。

pod update --no-repo-update
pod update

P.S. 更新命令的區(qū)別同庫安裝的區(qū)別斋陪,當然,也可以選擇在Podfile文件修改后缔赠,重新執(zhí)行一遍庫安裝友题,可以達到同樣的效果度宦。

安裝CocoaPod的幾個常見問題

1.gem過舊,安裝失敻瓿:
切換到ruby-china的gem源划鸽,使用sudo gem update命令進行源更新,安裝過程中需要輸入 Y 來保證新文件與舊文件沖突時進行文件的重寫模闲。

2.安裝 CocoaPods 時尸折,終端卡在Setting up CocoaPods master repo指令:
此時不妨新建一個終端窗口,隔幾分鐘使用du -sh * 或者du -sh ./指令查看~/.cocoapods里的文件大小实夹,會發(fā)現(xiàn)其大小一直在改變。因為此時 CocoaPods 默認把信息下載在~/.cocoapods目錄下荸实。

3.使用pod install指令時缴淋,顯示
[!] Pods written in Swift can only be integrated as frameworks; this feature is still in beta.
Add `use_frameworks!` to your Podfile or target to opt into using it.The Swift Pods being used are: xxx, xxxx, xxxxx:
根據(jù)指示重抖,在Podfile文件中添加一句use_frameworks!即可

# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
use_frameworks!

4.使用sudo gem install cocoapods指令進行安裝時钟沛,如果系統(tǒng)更新為 EI Capitan 版本,采取指令
sudo gem install -n /usr/local/bin cocoapods
可以解決下述問題:

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

卸載

有些時候恨统,也許我們不想使用 CocoaPods 功能了,那么如何對其進行卸載呢?
一般我們可查看gems的本地程序包莫绣,通過鍵入gem list命令后輸出如下圖顯示由捎,因個人使用安裝的多少,數(shù)量不定

gem列表.png

但是針對 CocoaPods 的相關(guān)組件應該相同, 按需求進行程序包的移除處理即可, 依次刪除以cocoapods為前綴的程序包:

sudo gem uninstall cocoapods  
sudo gem uninstall cocoapods-core
......
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市锭亏,隨后出現(xiàn)的幾起案子硬鞍,更是在濱河造成了極大的恐慌,老刑警劉巖锅减,帶你破解...
    沈念sama閱讀 222,807評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件怔匣,死亡現(xiàn)場離奇詭異每瞒,居然都是意外死亡,警方通過查閱死者的電腦和手機代芜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評論 3 399
  • 文/潘曉璐 我一進店門挤庇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來荞膘,“玉大人,你說我怎么就攤上這事⊥郎” “怎么了腹暖?”我有些...
    開封第一講書人閱讀 169,589評論 0 363
  • 文/不壞的土叔 我叫張陵翰萨,是天一觀的道長亩鬼。 經(jīng)常有香客問我,道長雳锋,這世上最難降的妖魔是什么玷过? 我笑而不...
    開封第一講書人閱讀 60,188評論 1 300
  • 正文 為了忘掉前任辛蚊,我火速辦了婚禮,結(jié)果婚禮上初澎,老公的妹妹穿的比我還像新娘飞蛹。我一直安慰自己,他們只是感情好墓懂,可當我...
    茶點故事閱讀 69,185評論 6 398
  • 文/花漫 我一把揭開白布捕仔。 她就那樣靜靜地躺著榜跌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪悄蕾。 梳的紋絲不亂的頭發(fā)上础浮,一...
    開封第一講書人閱讀 52,785評論 1 314
  • 那天,我揣著相機與錄音番刊,去河邊找鬼芹务。 笑死枣抱,一個胖子當著我的面吹牛靴姿,可吹牛的內(nèi)容都是我干的沃但。 我是一名探鬼主播,決...
    沈念sama閱讀 41,220評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼佛吓,長吁一口氣:“原來是場噩夢啊……” “哼宵晚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起维雇,我...
    開封第一講書人閱讀 40,167評論 0 277
  • 序言:老撾萬榮一對情侶失蹤淤刃,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后吱型,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體逸贾,經(jīng)...
    沈念sama閱讀 46,698評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,767評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了铝侵。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片灼伤。...
    茶點故事閱讀 40,912評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖狐赡,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情览祖,我是刑警寧澤,帶...
    沈念sama閱讀 36,572評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏鸠踪。R本人自食惡果不足惜营密,卻給世界環(huán)境...
    茶點故事閱讀 42,254評論 3 336
  • 文/蒙蒙 一被去、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧寂汇,春花似錦、人聲如沸累贤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,746評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽医清。三九已至,卻和暖如春柏腻,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背沃缘。 一陣腳步聲響...
    開封第一講書人閱讀 33,859評論 1 274
  • 我被黑心中介騙來泰國打工逾滥, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留掀亩,地道東北人。 一個月前我還...
    沈念sama閱讀 49,359評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親按傅。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,922評論 2 361

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

  • CocoaPods 是什么? CocoaPods 是一個負責管理 iOS 項目中第三方開源庫的工具。CocoaPo...
    朝洋閱讀 25,698評論 3 51
  • 最近知乎上已經(jīng)有兩位朋友問題邀請我回答同一問題:“如何客觀認識自己待德?”将宪。 其實大部分人都有一個誤區(qū),認為自我認識是...
    袁小華閱讀 545評論 0 4
  • 不知道自己是不是付出了感情,怎么說了以后不要聯(lián)系了之后心里還是有些難過确封。慢慢來纠拔,就會好了吧!加油(^ω^)
    Escargots閱讀 157評論 0 0
  • 智慧,是人窮盡一生都在追求期望擁有的人生財富。 查理·芒格的三個人生智慧,畫出能力圈捷绒,多學科視角和等一記好球它碎,屬于...
    小小火紅閱讀 313評論 1 3
  • 南國生紅豆 之如眾生往 云掩高聳樓 心藏相思愁
    夢枕寐閱讀 225評論 0 1