使用CocoaPods進行第三方資源管理
一年前在外包公司呆過,驚嘆于Cocoa Pods的強大,也讓我有不少迷惑的地方。之前寫過一篇Cocoa Pods使用的博客,詳細(xì)列出了通過Unix終端命令搭建環(huán)境的步驟,發(fā)布在新浪sae搭建的WordPress博客平臺,但是因為沒有續(xù)費,現(xiàn)在找不到了。
近半年來在新公司,驚嘆于老大進行項目依賴關(guān)系的處理,我老大主要是對iOS平臺的Xcode工具中的Workspace、Project、Target以及各種靜態(tài)庫之間的關(guān)系理解的比較透徹,所以他這方面的操作很牛逼。其實跟老大學(xué)習(xí)這方面的東西,基本能夠滿足項目資源管理的需求了,但是為什么我還要重新整理Cocoa Pods,總結(jié)搭建Cocoa Pods環(huán)境的博客呢?我想主要有以下幾點:
(1)看很多的iOS博客教程,基本初始的步驟就是要有Cocoa Pods環(huán)境;
(2)Cocoa Pods確實是一個方便的工具,特別是在敏捷開發(fā)多個項目的時候,一個工具重復(fù)使用,大量節(jié)約時間;
(3)可以及時更新github上面的開源庫代碼,只要改動Podfile文件中對應(yīng)的開源庫的版本號即可。
一、Cocoa Pods簡介
Cocoa Pods是一個負(fù)責(zé)管理iOS項目中第三方資源的工具,它的項目源代碼在Github上面管理,得益于活躍的Github開發(fā)者社區(qū)大神們的不斷維護,從2011年8月該項目啟動以來,它保持活躍更新。開發(fā)iOS項目不可避免地要使用第三方開源庫,CocoaPods的出現(xiàn)使得我們可以節(jié)省設(shè)置和更新第三方開源庫的時間。
在我們有了CocoaPods這個工具之后,只需要將用到的第三方開源庫放到一個名為Podfile的文件中,然后在命令行執(zhí)行$pod install命令,CocoaPods就會自動將這些第三方資源庫的源代碼下載下來,并且為當(dāng)前的工程設(shè)置好響應(yīng)的系統(tǒng)依賴和編譯參數(shù)。
二、Cocoa Pods的安裝
(1)安裝
安裝的方式非常簡單,Mac下已經(jīng)再帶了ruby,只要使用ruby的gem命令就可以安裝了。打開Mac終端工具,在終端運行下面的命令,
- [sudo] gem install cocoapods
- pod setup
說明,上面的[sudo]可以省略,這兩個步驟都是進行網(wǎng)絡(luò)請求的過程,所以需要一定的等待時間。
(2)更新
如果我們修改了Podfile文件,那么就需要更新CocoaPods,使用下面的ruby的gem命令來更新,
(3)查找第三方庫
可以使用pod search + lib_name來搜索第三方庫,查看版本,如下命令所示
說明:SDWebimage是一個用于圖片緩存的開源庫,是對UIImageView類的擴展。
三、Cocoa Pods的使用
現(xiàn)在我在Desktop/develop文件夾下面新建了一個項目,參考CocoaChina中的一個教程,就是一個完整的天氣App,項目名稱為SimpleWeather,那么接下來這樣操作使用Cocoa Pods,
(1)進入項目SimpleWeather.project所在的文件夾,在終端輸入以下命令,
- cd Desktop/develop/SimpleWeather
(2)在該目錄中,通過Vim新建Podfile
- vim Podfile
(3)通過i(insert模式),插入如下的語句,
- platform :ios, '7.0'
- pod 'Mantle'
- pod 'LBBlurredImage'
- pod 'TSMessages'
- pod 'ReactiveCocoa'
這樣就指定了第三方資源的iOS版本、開源庫主要包括:Mantle、LBBlurredImage、TSMessages、ReactiveCocoa,這些都不重要,這里只是示范而已。
輸入完成以后退出vim并保存,先Esc然后輸入:wq,表示寫入并退出。
(4)在終端輸入$pod install,
- pod install
初始化pod也是一個網(wǎng)絡(luò)請求下載的過程,稍等一段時間,如果輸入的資源名稱沒有問題,那么過一段時間就會在終端得到初始化成功的提示。
四、通過WorkSpace來進行項目代碼的編寫
進入項目文件夾,可以看見一個后綴名未.workspace的文件,雙擊打開。從現(xiàn)在開始我們通過來SimpleWeather.xcworkspace管理項目、編寫代碼,而不是之前的SimpleWeather.xproj,打開workspace文件,Xcode項目的文件結(jié)構(gòu)如下圖所示,
***個箭頭所指的就是SimpleWeather項目;第二個箭頭就是Pods幫我們生成的項目,它來管理需要的資源庫;第三個箭頭指向的就是Podfile里面指定的第三方開源庫。
還有需要注意的是每當(dāng)我們修改了Podfile這個文件之后,一定要在項目所在文件夾執(zhí)行$pod install命令,還可以執(zhí)行$pod update來更新類庫。
總結(jié):
這里是我在開發(fā)過程中簡單總結(jié)的,有很多沒有考慮到的細(xì)節(jié),我會根據(jù)自己遇到的問題再不斷地更新這個博客。在上家公司工作的時候就遇到一些CocoaPods更新時候需要***權(quán)限的問題,我盡量在后面重現(xiàn),幫助遇到該問題的朋友解決這個問題。
























