天天看點

最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)

前言

  • 由于每次新開項目都要重新使用CocoaPods,每次新項目都需要重新pod step更新repo源以保證第三方庫能擷取到最新版本,也是個人的潔癖吧,由于工具的東西久了不用又容易忘記,網上的說的也不齊全,是以每隔一段時間我用到後都會更新下保證以後使用友善!大家也可以用來作參考,最新更新時間2020年2月29日

什麼是CocoaPods?

  • CocoaPods是一個負責管理iOS項目中第三方開源庫的工具。CocoaPods的項目源碼在Github上管理。該項目開始于2011年8月12日,在這兩年多的時間裡,它持續保持活躍更新。開發iOS項目不可避免地要使用第三方開源庫,CocoaPods的出現使得我們可以節省設定和更新第三方開源庫的時間,在iOS開發中經常會用到第三方庫如AFNetworking,ASIHttpRequest等,在使用第三方庫時,你除了要導數源碼外,但是,內建這些依賴庫需要我們手動去配置,還有當這些第三方庫發生了更新,還需要手動去更新項目。這就顯得非常麻煩。有麻煩自然有解決辦法,CocoaPods就是為了解決這個問題而生的。通過CocoaPods,我們可以将第三方的依賴庫統一管理起來,配置和更新隻需要通過簡單的幾行指令即可完成。

CocoaPods版本快速檢視

  • CocoaPods官網:什麼是CocoaPods
  • CocoaPods官方部落格:檢視最新特性
  • rubygems官網檢視:CocoaPos全部版本檢視
  • github官網檢視:CocoaPods源碼位址
  • github官網檢視:CocoaPods主倉庫
  • CocoaPods國内鏡像:清華大學CocaPods使用幫助
  • CocoaPods1.8.0以上支援CDN:更新請點此處檢視

CocoaPods下載下傳及安裝

  • CocoaPods通過ruby指令進行安裝下載下傳,是以先在終端中檢視是否裝有ruby環境,通過下面指令檢視ruby版本
ruby -v
           
  • 确實安裝以後,就可以通過下面指令安裝cocoapods
sudo gem install cocoapods
           
  • 如果發現很久沒有反應,應該是cocoapods.org被屏蔽了,這是需要通過阿裡雲的ruby鏡像來通路cocoapods,先檢視ruby源所在位址
gem sources -l
           
  • 預設情況,終端會傳回下面資訊
*** CURRENT SOURCES ***

https://rubygems.org/
           
  • 當然這個源因為使用的亞馬遜的雲服務,是以被牆了,牆内是通路不到的。是以我們需要尋找一個可以在國内通路到的鏡像。目前可用的http://rubygems-china.oss.aliyuncs.com這個阿裡雲的鏡像
  • 确認鏡像可用後,現在就要開始修改ruby源了。首先執行以下指令删除原來的ruby源
  • 然後增加新的鏡像源位址
gem sources -a http://rubygems-china.oss.aliyuncs.com
           
  • 如果安裝正常會出現下面
    最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)
  • 安裝完成後,通過cocoapods的搜尋驗證是否cocoapods是否可用
pod search AFNetworking
           
  • 終端如果一直停在下面情況很久
最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)
  • 表明還不能用,這時需要更新pod,下載下傳依賴包
pod setup
           
  • 還是出現紅色錯誤,還需要進行gem版本更新,如圖表示更新成功
sudo gem update --system
           
最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)
  • 檢查github連接配接是否通過
ping github.com
           
  • 檢視cocoapods檔案資訊
pob repo list
           
  • 顯示結果為0 repos,進入到~/.cocoapods目錄檢視檔案大小
cd ~/.cocoapods
           
  • 查詢檔案大小
  • 顯示0B repos,此時在重新執行更新
pod setup
           
  • 如果pod setup還是一直沒反應失敗可以用下面的方法解決可以繼續往下看
  • 到此可以通過pod repo檢視master資訊了
pod repo
           
最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)
  • 通過以下指令可以執行pods操作
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update
           

pod setup失敗解決方法

  1. 通路 https://github.com/CocoaPods/Specs,然後将Specs項目fork到自己的github賬戶上
  2. 下載下傳GitHub Desktop, 然後clone Specs項目,當然也可以直接使用git clone但是貌似沒有用戶端下載下傳快,podspec索引檔案比較大,有80M左右。
  3. 将clone的Specs項目的檔案夾改名為master,然後拖到/Users/使用者名/.cocoapods/repos目錄下。
  4. 運作pod setup
解釋:pod setup的本質就是将https://github.com/CocoaPods/Specs上的Specs項目clone到/Users/使用者名/.cocoapods/repos目錄下。若此目錄下已有Specs項目,則會将項目更新到最新的狀态。由于Specs很大,容易導緻pod setup失敗。這時就需要我們手動安裝Specs。若直接從github上下載下傳zip檔案,由于缺少git檔案,會導緻cocoa pods不使用。若用git clone,由于檔案過大,容易導緻失敗。使用GitHub Desktop軟體,則會提高clone的成功率。

解決pod install/pod update更新慢的問題

設定pod源碼(初始化cocoapods)

pod repo remove master
//coding 上有每日更新的,建議使用這個
pod repo add master https://git.coding.net/CocoaPods/Specs.git

//或者用oschina,但是https 好像有問題,一直是403,是以用ssh的方式,這裡需要到官網去配置ssh key
pod repo add master https://git.oschina.net/akuandev/Specs.git
           

手動将代碼clone下來

  • 出現 [!] To setup the master specs repo, please run pod setup.
git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master

pod setup  //務必在手動下載下傳代碼後執行一次,執行後 Setup completed

//在執行
pod install --verbose --no-repo-update //避免去更新了
           

更新pod方法

最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)
最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)
最全CocoaPods下載下傳安裝及使用(使用cocopods看本文就夠了)

繼續閱讀