CocoaPods

CocoaPods的運行原理:

CocoaPods是強大的第三方框架管理工具,它是將所有的依賴庫都放到另一個名為Pods項目中,然后 讓主項目依賴Pods項目,這樣,源碼管理工作都從主項目移到了Pods項目中

  • Pods項目最終會編譯成一個名為libPods.a的文件,主項目只需要依賴這個.a 文件即可。
  • 對于資源文件,CocoaPods提供了一個名為Pods-resources.sh的bash腳本, 該腳本在每次項目編譯的時候都會執(zhí)行,將第三方庫的各種資源文件復制到目 標目錄中。
  • CocoaPods通過一個名為Pods.xcconfig的文件來在編譯時設(shè)置所有的依賴和 參數(shù)。

CocoaPods安裝流程:

準備工作

  • 升級電腦的gem(不是必要步驟)
  • 終端中敲下面命令:sudo gem update --system
  • 切換CocoaPods的數(shù)據(jù)源(最好要做)
  • 移除原來的源:gem sources --remove https:// rubygems.org/
  • 換成淘寶的源gem sources -a http://ruby.taobao.org/
    顯示現(xiàn)在的源gem sources -l

安裝CocoaPods

終端中敲下面命令:
sudo gem install cocoa pods

設(shè)置 pod 倉庫

pod setup
默認這樣更新會比較慢(在國外的網(wǎng)站),可以將文件的托管地址放到國內(nèi)的網(wǎng)站上,將文件托管的地址從國外托管到國內(nèi)

pod repo remove master
pod repo add master http://git.oschina.net/akuandev/Specs.gitpod repo update 

只有支持CocoaPods的框架才可以被CocoaPods管理,初始化倉庫的目的就是下載所有支持CocoaPods的框架相關(guān)的名稱和配置信息,在CocoaPods里直接搜索,就可以查看這個框架是不是支持CocoaPods
如何判斷一個框架是否支持CocoaPods,只要有XXX.podspec文件
就說明支持CocoaPods管理

測試

pod --version
顯示版本號就說明已經(jīng)安裝好了

CocoaPods使用說明

搜索地第三方框架

(這里以SDWebImage框架為例)

舉例: pod search SDWebImage

搜索到第三方框架以后利用CocoaPods安裝第三方框架

  • 利用vim創(chuàng)建Podfile。
    • 注意:Podfile文件應(yīng)該和你的工程文件.xcodeproj在 同一個目錄下
    • vim Podfile(先cd到項目所在文件夾)
  • 將依賴的庫名字依次列在文件中
platform :iospod 'JSONKit', '~> 1.4'pod'Reachability', '~>3.0.0' 
pod'AFNetworking', '2.0.0' pod 'RegexKitLite'
  • 保存并退出 按下esc,然后輸入:wq
  • 利用CocoPods下載類庫 pod install


    screenshot.png

更新框架

pod update
就會自動為你更新框架,會把倉庫所有的框架都會更新一遍,這里注意:CocoaPods在執(zhí)行pod installpod update時,會默認先更新一次CocoPods的 spec倉庫索引。使用--no-repo-update參數(shù) 可以禁止其做索引更新操作

pod install --no-repo-update
pod update --no-repo-update 

如果你不想使用終端命令,xocde有一款比較好用的cocoapods插件

插件直接在github里面下載,下載好以后運行安裝插件

screenshot.png

填寫pod file

升級到Mac OS X EL Capitan后,pod安裝失敗的解決辦法

screenshot.png

重裝cocoa pods

sudo gem install -n /usr/local/bin cocoa pods
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容