一 CocoaPods的使用及其原理

2021-07-17 00:05:35 字數 2954 閱讀 2826

cocoapods manages library dependencies for your xcode projects.

cocoapods是mac os x 和 ios 應用程式開發的乙個第三方庫依賴的管理工具,你可以用它來 幫助集中匯入、配置以及更新所用到的第三方。在這之前可以自己定義依賴關係,利用cocoapods便可自動的配置編譯選項。詳細可參考以下:

這裡很多未按照官方指南來寫,比如是否將cocoapods加入到**版本控制中等等此類可做選擇的操作。詳細可親閱官方指南。

$ sudo gem install cocoapods

$ pod setup

$ pod --version // check

注意:

$ sudo gem update --system
$  gem sources –remove 

$ gem sources –a

$ gem sources-l

$  gem sources –remove 

$ gem sources –a

$ gem sources -l

mac系統公升級到10.11後,gem安裝cocoapods命令不好使,報錯

$ sudo gem install –n/usr/local/bin cocoapods
另外,cocoapods公升級使用命令

$ sudo gem install cocoapods
或者你想回退cocoapods版本

$ sudo gem install cocoapods --pre
三方框架的版本指定規則

」>1.0」 任何版本大於1.0的

「>=1.0」 版本號1.0以及任何版本大於1.0的

「<1.0」、」<= 1.0」 同理

「~>0.1.2」 版本號0.1.2的,以及0.1.2 至0.2之間的所有版本,但不包括0.2

「~>0.1」 版本號0.1的,以及0.1至1.0之間的所有版本,但不包括1.0

「~>0」 相當於沒有指定

還可以通過多種形式指定需要整合的第三方,例如:

pod 'alamofire', :git => ''
pod 'alamofire', :git => '', :branch => 'dev'
pod 'alamofire', :git => '', :tag => '3.1.1'
pod 'alamofire', :git => '', :commit => '0f506b1c45'
更複雜的podfile的編寫可參考

注意:podfile檔案不需要字尾名。建議用xcode 編輯podfile檔案。如果用的是rtf文字編輯或者其他編輯器,可能會新增額外的字元,這樣執行pod install會失敗。書寫不能出錯。

這些第三方是開發者利用cocoapods工具將它們製作成cocoapod。(有點拗口,個人理解:cocoapods是乙個專案,裡面包含很多東西,包括使用的那些命令,這個可以看成是工具吧,它可以方便開發者整合三方框架,但是這些三方肯定是它們的開發者,將原始碼利用cocoapods工具生成一些東西才能方便在專案中整合,而這些生成的所有東西也就稱為cocoapod。)

這些第三方都被作者上傳到了github上,同時在生成cocoapods的時候,有乙個.podspec檔案被「上傳」到了乙個repo(庫)裡,這個是類似於「整合該第三方的描述檔案」,執行安裝命令的時候就是根據這個檔案進行整合第三方到你的專案中的。(這些都是需要作者製作的)

所以在安裝之前可以先使用pod search命令先檢視需要匯入的第三方是否存在

cocoapods也可以整合到已經存在的.xcworkspace檔案, 使用命令

workspace 'myworkspace'
pod installpod update的使用

官方文件中有詳細區分兩種命令的用法

(詳細可參考

cocoapods的命令盡在

整合哪些第三方當然是依靠podfile檔案中宣告來,但除了這個關鍵檔案,podfile.lock檔案也是至關緊要的。podfile.lock檔案是在第一次執行pod install的時候生成的。例如:

pod 'restkit'
在第一次執行pod install的時候就會安裝對應版本的restkit,同時生成podfile.lock檔案,裡面標明了這次安裝的版本。合作開發中,當該專案需要在不同的機器上執行,那麼執行pod install的時候還是會根據podfile.lock檔案標明的版本進行安裝,並不會安裝最新版本的restkit。除非更改了podfile檔案的版本號而且同時執行了pod update,這時會生成新的podfile.lock,可想而知,這時標明的是當前安裝的版本。這就避免了開發雙方匯入的庫版本不一樣的情況。

更多參考:

【深入理解cocoapods】

cocoapods的使用及其相關問題

前提條件 必須已經成功安裝好cocoapods 1.建立podfile 配置檔案 首先建立乙個xcode檔案 例如 a 新建乙個專案,名字podtest,b 終端中,cd到專案總目錄 注意 包含podtest資料夾 podtest.xcodeproj podtesttest的那個總目錄 cd use...

Cocoapods的更新及其過程

今天使用pod 更新第三方庫的時候,突然報錯了,查詢後發現是由於 cocoapods 版本太低導致的更新失敗,於是乎,開始更新cocoapads,然而更新cocoapods也失敗了,報錯 8.gz 證書問題,查詢發現原來gem版本特太低了,才2.4,最新的都到了 2.6了,於是開始了折騰。更新 ge...

最新的CocoaPods的使用教程 一

前幾天發布我的開源庫 最簡單方便的ios輪播開源庫 jycarousel 到cocoapods的時候。對cocoapods重新學習了一下,之前只是會簡單的使用,並沒有全面的了解。現在要對它做乙個學習記錄吧,現在我還是只會簡單的使用 教程只是我誇大的說法 別罵我 下面的操作都是經過親自驗證通過的,放心...