CocoaPods是讓我們能自動(dòng)化的、集中的、直觀的管理第三方開源庫(kù)的工具,它能夠解決開源庫(kù)和開源庫(kù)以及開源庫(kù)和工程之間的依賴關(guān)系、檢查重復(fù)添加的framework等問題,大大的節(jié)省了我們的開發(fā)時(shí)間。我覺得CocoaPods是一個(gè)合格的IOS程序員必須要掌握的工具之一。
安裝
1.打開終端,輸入:
$ sudo gem install cocoapods
2.等待安裝進(jìn)程結(jié)束后,輸入:
$ pod setup
如果沒有報(bào)錯(cuò),就說明一切安裝就成功了!
安裝過程中可能遇到的問題
1.執(zhí)行完install命令半天沒反應(yīng)
這有可能是因?yàn)镽uby的默認(rèn)源使用的是cocoapods.org,國(guó)內(nèi)訪問這個(gè)網(wǎng)址有時(shí)候會(huì)有問題,網(wǎng)上的一種解決方案是將遠(yuǎn)替換成淘寶的,替換方式如下:
$ gem sources --remove https://rubygems.org/
//等有反應(yīng)之后再敲入以下命令
$ gem sources -a http://ruby.taobao.org/
要想驗(yàn)證是否替換成功了,可以執(zhí)行:
$ gem sources -l
正常的輸出是:
*** CURRENT SOURCES ***
http://ruby.taobao.org/
2.gem版本過老
gem是管理Ruby庫(kù)和程序的標(biāo)準(zhǔn)包,如果它的版本過低也可能導(dǎo)致安裝失敗,解決方案自然是升級(jí)gem,執(zhí)行下述命令即可:
$ sudo gem update --system
3.安裝完成后,執(zhí)行pod setup命令時(shí)報(bào)錯(cuò):
/Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:298:in `to_specs': Could not find 'cocoapods' (>= 0) among 6 total gem(s) (Gem::LoadError)
from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:309:in `to_spec'
from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_gem.rb:53:in `gem'
from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/bin/pod:22:in `<main>'
這就是路徑設(shè)置的問題,可以執(zhí)行:
$ rvm use ruby-1.9.3-p448
升級(jí)
再次執(zhí)行安裝命令即可
$ sudo gem install cocoapods
使用CocoaPods
1.創(chuàng)建Podfile
//進(jìn)入工程目錄
$ cd /Users/wangzz/Desktop/CocoaPodsTest
//創(chuàng)建Pods文件
$ touch Podfile
進(jìn)入到工程的根目錄下,看見創(chuàng)建完畢的結(jié)構(gòu)如下:

2.編輯Podfile
進(jìn)入http://cocoapods.org
搜索AFNetworking

紅色圈內(nèi)的部分就是我們需要的信息,打開Podfile文件,輸入以下信息:
platform :ios
pod 'AFNetworking', '~> 2.5'
3.執(zhí)行導(dǎo)入命令
$ cd /Users/wangzz/Desktop/CocoaPodsTest
$ pod install
pod install命令執(zhí)行成功后,會(huì)看到工程目錄下多出CocoaPodsTest.xcworkspace、Podfile.lock文件和Pods目錄。再看看剛才執(zhí)行完pod install命令打印出來的內(nèi)容的最后一行:
[!] From now on use `CocoaPodsTest.xcworkspace`.
提示我們從現(xiàn)在起,我們需要使用CocoaPodsTest.xcworkspace文件來開發(fā)。
最后
第三方庫(kù)會(huì)被編譯成靜態(tài)庫(kù)供我們正真的工程使用,CocoaPods會(huì)將所有的第三方庫(kù)以target的方式組成一個(gè)名為Pods的工程,該工程就放在剛才新生成的Pods目錄下。
整個(gè)第三方庫(kù)工程會(huì)生成一個(gè)名稱為libPods.a的靜態(tài)庫(kù)提供給我們自己的CocoaPodsTest工程使用。
我們的工程和第三方庫(kù)所在的工程會(huì)由一個(gè)新生成的workspace管理,為了方便我們直觀的管理工程和第三方庫(kù),CocoaPodsTest工程和Pods工程會(huì)被以workspace的形式組織和管理,也就是我們剛才看到的CocoaPodsTest.xcworkspace文件。
原來的工程設(shè)置已經(jīng)被更改了,這時(shí)候我們直接打開原來的工程文件去編譯就會(huì)報(bào)錯(cuò),只能使用新生成的workspace來進(jìn)行項(xiàng)目管理。
打開工程,導(dǎo)入新生成的libPods.a庫(kù),和AFnetworking.a庫(kù),未來每次增加新的第三方開源庫(kù),都要添加相應(yīng)的.a文件。
第三方庫(kù)更新
只需要在Podfile文件中添加相應(yīng)的第三方庫(kù)信息,再次執(zhí)行pod install命令即可。
享受CocoaPods的魅力吧,祝大家玩的開心。