搬來一篇以前的文章??
1 安裝CocoaPods
打開終端Terminal 輸入以下命令行
sudo會授予臨時的管理員權限,所以會要求輸入密碼
$ sudo gem install -n /usr/local/bin cocoapods
// $ sudo gem install cocoa pods 在 EL Capitan版本之前的Mac系統可以用這句
$ pod setup
2 在項目中使用
2.1 創建Podfile
CocoaPods 的項目依賴管理是依靠于 Podfile
在Terminal中將當前文件夾切換到需要使用CocoaPods的項目文件夾中,也就是
.xcodeproj
所在的位置
$ cd /Users/UserName/Documents/CocoaPodsTest
// cd 為打開文件夾 后面跟著相對路徑
// cd 一次之后可以 ls 看當前所在的文件夾
$ touch Podfile
// 創建了一個名 Podfile 的無后綴文件
$ open -a Xcode Podfile
// 使用Xcode 來打來名為 Podfile 的文件
上述命令執行完之后就會在項目文件夾里創建一個Podfile
的空文件,并且這個文件已經被Xcode打開
在打開的空文件中,粘貼下列文字
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
pod 'Alamofire', '~> 3.4'
注意??:Swift庫需要添加
use_frameworks!
到Podfile中。而且這個只支持iOS8及以上系統
Pod 'AFNetworking','~2>.5'
這句是導入2.5版本AFNetWorking
庫,每個庫在它們的Github主頁上都會有這句話的聲明。以后只要添加這兩句就可以了
比如添加顯示Gif的庫 Gifu
pod 'Gifu'
就行了
注意??:不要用一般的文字編輯工具來修改
Podfile
。因為一般的文字編輯工具可能會對一些字符比如引號進行替換,從而導致了Podfile
在執行時發生錯誤。因此推薦使用一些編程軟件,比如Xcode
2.2 安裝第三方庫
現在可以在項目中安裝依賴(第三方庫)了。
$ pod install
這個命令會讓CocoaPosa根據Podfile里面的配置來下第三方庫了。
安裝完之后,以后打開項目就不能只打開.xcodeproj
而是xcworkspace
$ open youProjectName.xcworkspace
3 pod install
與pod update
區別
簡單結論:
-
pod instal
: 每次編輯完 Podfile 安裝或者移除pod文件的時候用,它不會更新已有的pod至最新 -
pod update
: 更新已有的pod至最新。它也有install 的功能,但是如果沒有明確pod名字會把全部的pod都更新到最新。
3.1 pod install
在項目第一次獲取pods的時候用install
命令,每次編輯Podfile, 更新或者刪除
- 每次
pod install
命令運行的時候就會下載并安裝新的pods文件,在每個Podfile.lock中寫入安裝的版本號。 Podfile.lock 文件追蹤每個pod的已經安裝的版本然后鎖定這些版本。 - 當你運行
pod install
命令時, 它僅僅處理沒有記錄在Podfile.lock中的依賴。 it only resolves dependencies for pods that are not already listed in the Podfile.lock
.對于那些已經存在于Podfile.lock中的文件,該命令下載Podfile.lock中明確的版本,并且不會去檢查是否存在一個更新的可用版本。對于沒有存在于Podfile.lock中的pods,該命令搜索匹配Podfile中描述的版本號 (比如 'MyPod', '~>1.2')
3.2pod outdated
pod outdated
會讓CocoaPods 列出所有比Podfile.lock中的版本(現有版本)有更新版本的pods
這意味著如果對列出的pods運行pod update PODNAME
,它們只要符合podfile中的限制就會更新
.
3.3 pod update
當你運行 pod update PODNAME
, 它會盡可能的更新到最新的版本 (只要符合你的 Podfile 中的限制).
CocoaPods 嘗試尋找一個當前pod更新的版本, 無論 Podfile.lock 列出什么版本.
如果運行 pod update 不帶上pod名,
with no pod name, CocoaPods 將會把Podfile中列出的每一個pod都更新到最新版本。
3.4 預期用途
更新特定的pod.
用pod update PODNAME
pod install
不會更新已經安裝的pods的版本Podfile中添加了新的pod
用pod install
pod update
會同時把已有的pod更新到最新版本
總而言之,僅在你想要更新某個或者全部的pod的版本時候使用pod update
。