IOS開發-CocoaPods安裝和使用教程及常見錯誤
CocoaPods是iOS最常用的第三方類庫管理工具,絕大部分有名的開源類庫都支援CocoaPods。所以,作為iOS程式設計師,掌握CocoaPods的使用是必備技能。
下面我們就來講一下CocoaPods的安裝流程。
第一步:安裝cocoapods
sudo gem install cocoapods
>ERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://rubygems.org/latest_specs.4.8.gz)
如果這裡寫程式碼片以上為安裝不成功的終端輸出,執行以下操作
gem sources --remove https://rubygems.org/
gem sources -a http://ruby.taobao.org/
gem sources -l(用來檢視是否成功)
sudo gem install cocoapods
安裝成功後,接著執行命令:
pod setup
如果Ruby環境不夠新,可能需要更新以下:
sudo gem update –system
至此安裝就完成了,我們可以嘗試搜尋一個第三方類庫:
pod search AFNetworking
終端顯示出查詢的AFNetworking類
-> AFNetworking (3.0.4)
A delightful iOS and OS X networking framework.
pod 'AFNetworking', '~> 3.0.4'
- Homepage: https://github.com/AFNetworking/AFNetworking
- Source: https://github.com/AFNetworking /AFNetworking.git
- Versions: 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 3.0.0-beta.3, 3.0.0-beta.2, 3.0.0-beta.1,
2.6.3, 2.6.2, 2.6.1, 2.6.0, 2.5.4, 2.5.3, 2.5.2, 2.5.1, 2.5.0, 2.4.1, 2.4.0, 2.3.1,
2.3.0, 2.2.4, 2.2.3, 2.2.2, 2.2.1, 2.2.0, 2.1.0, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 2.0.0-RC3,
2.0.0-RC2, 2.0.0-RC1, 1.3.4, 1.3.3, 1.3.2, 1.3.1, 1.3.0, 1.2.1, 1.2.0, 1.1.0, 1.0.1, 1.0,
1.0RC3, 1.0RC2, 1.0RC1, 0.10.1, 0.10.0, 0.9.2, 0.9.1, 0.9.0, 0.7.0, 0.5.1 [master repo]
- Subspecs:
- AFNetworking/Serialization (3.0.4)
- AFNetworking/Security (3.0.4)
- AFNetworking/Reachability (3.0.4)
- AFNetworking/NSURLSession (3.0.4)
- AFNetworking/UIKit (3.0.4)
-> AFNetworking+AutoRetry (0.0.5)
Auto Retries for AFNetworking requests
pod 'AFNetworking+AutoRetry', '~> 0.0.5'
- Homepage: https://github.com/shaioz/AFNetworking-AutoRetry
- Source: https://github.com/shaioz/AFNetworking-AutoRetry.git
- Versions: 0.0.5, 0.0.4, 0.0.3, 0.0.2, 0.0.1 [master repo]
使用CocoaPods的第一步,是在當前專案下,新建一個Podfile檔案:
touch Podfile
然後利用
vim Podfile
檔案編輯,或者
open -e Podfile
加入你想要使用的類庫,格式如下:
platform :ios
pod 'Reachability', '3.1.0'
platform:ios, '7.0'
pod 'JSONKit','1.4'
pod 'AFNetworking', '~> 2.3.1'
關閉vim
:wq
如果是拷貝的別人的專案,或是一個很久沒開啟過的專案,可能需要先執行一下:
pod update
然後呼叫下面命令來進行初始化(下載庫):
pod install
錯誤資訊
[!] Unable to satisfy the following requirements:
AFNetworking (~> 3.0.4)
required byPodfile
Specs satisfying the
AFNetworking (~> 3.0.4)
dependency were found,
but they required a higher minimum deployment target.
如果出現以上資訊是因為配置檔案Podfile 檢查 # platform :ios, ‘8.0’ 有沒有指定版本
pod ‘AFNetworking’, ‘~> 3.0.4’
這樣就大功告成了!
注意點補充
1、使用CocoaPods生成的 .xcworkspace 檔案來開啟工程,而不是以前的 .xcodeproj 檔案。
2、每次更改了Podfile檔案,你需要重新執行一次pod install或者pod update命令
3、前面的每一步都有可能出現問題,但大部分問題都是因為大區域網的原因,用一個網速穩定的境外VPN可破
4、第三方庫編寫版本問題
pod ‘AFNetworking’ //不顯式指定依賴庫版本,表示每次都獲取最新版本
pod ‘AFNetworking’, ‘2.0’ //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′ //使用高於2.0的版本
pod ‘AFNetworking’, ‘>=2.0′ //使用大於或等於2.0的版本
pod ‘AFNetworking’, ‘<2.0′ //使用小於2.0的版本
pod ‘AFNetworking’, ‘<=2.0′ //使用小於或等於2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′ //使用大於等於0.1.2但小於0.2的版本,相當於>=0.1.2並且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′ //使用大於等於0.1但小於1.0的版本
pod ‘AFNetworking’, ‘~>0′ //高於0的版本,寫這個限制和什麼都不寫是一個效果,都表示使用最新版本