-
cocoapods簡介:
cocoapods 是iOS的類庫管理工具,可以讓開發者很方便集成各種第三方庫,而不用去網站上一個個下載,再一個個文件夾的拖進項目中,還得添加相關的系統依賴庫。只需要安裝好cocoapods,然后編寫好Podfile,最好在終端輸入一行命令,就可以簡單的做到第三方庫的添加、升級、刪除,大大的節省我們的開發時間。
-
cocoapods安裝:
首先我們需要安裝Ruby環境,這里就不過多介紹,一般都是安裝了的。
然后就是打開終端,輸入
$ gem sources -l
檢查Ruby源(天朝你懂得),如果你的鏡像地址是
*** CURRENT SOURCES ***
https://rubygems.org/
那么我們就需要替換這個鏡像源,首先刪除這個
$ gem sources --remove https://rubygems.org/
運行完這行命令,繼續
$ gem sources -a https://ruby.taobao.org/
(OS 10.11以前是$ gem sources -a http://ruby.taobao.org/)
不過現在有說法淘寶鏡像沒有繼續維護(傳送門)這個,我也不知道真假,所以這邊還有一個鏡像源
$ gem sources -ahttps://gems.ruby-china.com/
(注:請盡可能用比較新的 RubyGems 版本,建議 2.6.x 以上。
$ gem update --system # 這里請翻牆一下,如果不行下面也就有鏈接,下載安裝包安裝 $ gem -v
)
運行完了,你可以運行 $ gem sources -l 看下是否替換成功。
*** CURRENT SOURCES ***
https://gems.ruby-china.org
或則
*** CURRENT SOURCES ***
https://ruby.taobao.org/
到這里就算已經成功配置完環境了,下一步就是安裝了。繼續在終端輸入命令:
$ sudo gem install -n /usr/local/bin cocoapods
(OS 10.11以前是 $ sudo gem install cocoapods)
等執行完,繼續:
$ pod setup
到這里,就算安裝成功了;你可以輸入
$ pod --version
進行驗證cocoapods版本,你也可以更新gem,這個就不多說,自己看鏈接。
-
cocoapods使用:
首先,我們得在終端里面cd到項目文件夾里面
$ cd 項目文件夾路徑 (可以直接把拖動項目文件夾到終端光標處,系統自動生成路徑)
然后創建Podfile 文件
$ touch Podfile
再編輯Podfile文件:(Podfile語法參考)
$ vim Podfile (終端vim文件 按 i 可編輯 ,esc 退出編輯,:wq 可保存退出,:q 不保存退出)
platform :ios, '8.0' #用來設置所有第三方庫所支持的iOS最低版本
pod 'AFNetworking','~>2.6' #設置框架的名稱和版本號
cocopods版本是1.0.0以上的:
platform :ios, '8.0'
use_frameworks! #(swift要用到這一句)
target 'MyApp' do #MyApp 就是你的項目名
pod 'AFNetworking', '~> 2.6'
end
(版本號的規則: '>1.0' 可以安裝任何高於1.0的版本 '>=1.0' 可以安裝任何高於或等於1.0的版本 '<1.0' 任何低於1.0的版本 '<=1.0' 任何低於或等於1.0的版本 '~>0.1' 任何高於或等於0.1的版本,但是不包含高於1.0的版本 '~>0' 任何版本,相當於不指定版本,默認采用最新版本號)
寫好了 :wq 保存退出vim,輸入
$ pod install
等命令運行完,項目就已經是添加了cocoapods管理,啟動項目就是點擊.xcworkspace后綴的文件,在項目中,導入頭文件就能調用第三方庫了。以后需要添加、更新、刪除某個第三方庫,只要編寫好Podfile文件,在終端輸入:
$ pod update
運行完就可以了。
PS:常用的命令
1.清理緩存(或則是本地倉庫,不知道這個說法對不對)
$ sudo rm -fr ~/Library/Caches/CocoaPods/
$ sudo rm -fr ~/.cocoapods/repos/master/
2.Setting up CocoaPods master repo 卡住(查看master下載情況)
$ cd ~/.cocoapods
$ du -sh * (大小894M左右,記錄時間:2016.11.7--cocoapods版本1.1.1);
3. 卸載重裝cocoapods
4.升級ruby遇到的錯誤(傳送門)
4.1
ERROR: While executing gem ... (TypeError)
no implicit conversion of nil into String
4.2
Setting up CocoaPods master repo
[!] /usr/local/bin/Git clone https://github.com/CocoaPods/Specs.git master
Cloning into 'master'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
