CocoaPods是什么?
當(dāng)你開發(fā)iOS應(yīng)用時,會經(jīng)常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等??赡苣硞€類庫又用到其他類庫,所以要使用它,手動一個個去下載所需類庫十分麻煩。另外一種常見情況是,你項(xiàng)目中用到的類庫有更新,你必須得重新下載新版本,重新加入到項(xiàng)目中,十分麻煩。所以,你需要 CocoaPods。
CocoaPods應(yīng)該是iOS最常用最有名的類庫管理工具了,上述兩個煩人的問題,通過cocoaPods,只需要一行命令就可以完全解決,當(dāng)然前提是你必須正確設(shè)置它。重要的是,絕大部分有名的開源類庫,都支持CocoaPods。所以,作為iOS程序員的我們,掌握CocoaPods的使用是必不可少的基本技能了。
如何下載和安裝CocoaPods?
在安裝CocoaPods之前,首先要在本地安裝好Ruby環(huán)境。
參考如何快速正確的安裝 Ruby, Rails 運(yùn)行環(huán)境
http://ruby-china.org/wiki/install_ruby_guide
下面提供一個快捷方法安裝CocoaPods:
1.訪問 https://github.com/CocoaPods/Specs,然后將Specs項(xiàng)目fork到自己的github賬戶上
下載GitHub Desktop, 然后clone Specs項(xiàng)目。
將clone的Specs項(xiàng)目的文件夾改名為master,然后拖到/Users/用戶名/.cocoapods/repos目錄下。
運(yùn)行pod setup
解釋:pod setup的本質(zhì)就是將https://github.com/CocoaPods/Specs上的Specs項(xiàng)目clone到/Users/用戶名/.cocoapods/repos目錄下。若此目錄下已有Specs項(xiàng)目,則會將項(xiàng)目更新到最新的狀態(tài)。由于Specs很大,容易導(dǎo)致pod setup失敗。這時就需要我們手動安裝Specs。若直接從github上下載zip文件,由于缺少git文件,會導(dǎo)致cocoa pods不使用。若用git clone,由于文件過大,容易導(dǎo)致失敗。但是使用GitHub Desktop軟件,則會提高clone的成功率,并且會給出clone的進(jìn)度。
使用cocoapods:
利用CocoaPods,在項(xiàng)目中導(dǎo)入AFNetworking類庫
1.AFNetworking類庫在GitHub地址是:https://github.com/AFNetworking/AFNetworking
為了確定AFNetworking是否支持CocoaPods,可以用CocoaPods的搜索功能驗(yàn)證一下。在終端中輸入:
$ pod search AFNetworking
過幾秒鐘之后,你會在終端中看到關(guān)于AFNetworking類庫的一些信息。
2.使用Xcode 創(chuàng)建一個項(xiàng)目
打開終端,輸入cd /Users/paladinfeng/Desktop/shareSDKDemo/demo
(注:cd后邊有個空格,然后接你剛創(chuàng)建的項(xiàng)目的路徑就可以了,別告訴我你不會直接拖進(jìn)去)
創(chuàng)建這個PodFile后在終端中進(jìn)入(cd命令)你項(xiàng)目所在目錄,然后在當(dāng)前目錄下,利用vim創(chuàng)建Podfile,運(yùn)行:
vim Podfile
3.寫入以下內(nèi)容并保存 小提示:(終端vim文件 按 i 可編輯 ,esc 退出編輯,:wq 可保存退出)
platform :ios, '8.0'
target “target名稱” do
pod 'AFNetworking', '~> 3.1.0'
end
4.導(dǎo)入第三方庫
$pod install
pod install與pod update區(qū)別:
1.使用pod install來安裝新的庫,即使你的工程里面已經(jīng)有了Podfile,并且已經(jīng)執(zhí)行過pod install命令了;所以即使你是添加或移除庫,都應(yīng)該使用pod install。
2.使用pod update [PODNAME] 只有在你需要更新庫到更新的版本時候用。
小技巧:
最近使用CocoaPods來添加第三方類庫,無論是執(zhí)行pod install還是pod update都卡在了Analyzing dependencies不動
原因在于當(dāng)執(zhí)行以上兩個命令的時候會升級CocoaPods的spec倉庫,加一個參數(shù)可以省略這一步,然后速度就會提升不少。加參數(shù)的命令如下:
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update```
至此,添加已經(jīng)完成??梢钥吹巾?xiàng)目目錄里面多了4個文件,以后運(yùn)行工程都使用.xcworkspace文件,而不再用.xcodeproj了。
移除CocoaPods項(xiàng)目中已經(jīng)配置的類庫
1.打開終端,輸入cd /Users/paladinfeng/Desktop/shareSDKDemo/demo
(注:cd后邊有個空格,然后接你創(chuàng)建的項(xiàng)目的路徑就可以了,別告訴我你不會直接拖進(jìn)去)
創(chuàng)建這個PodFile后在終端中進(jìn)入(cd命令)你項(xiàng)目所在目錄,然后在當(dāng)前目錄下,利用vim創(chuàng)建Podfile,運(yùn)行:
vim Podfile
2.看到以下內(nèi)容并保存 小提示:(終端vim文件 按 i 可編輯 ,esc 退出編輯,:wq 可保存退出)
platform :ios, '8.0'
target “target名稱” do
pod 'AFNetworking', '~> 3.1.0'(把這一行刪掉)
end
3.$pod install
編譯運(yùn)行沒有錯誤完成