CocoaPods 那點事(macOS Sierra 10.12.3)

CocoaPods的官網(wǎng):https://guides.cocoapods.org

一.什么是CocoaPods

  • 這兩年iOS開發(fā)的發(fā)展,不用我給大家多說了,可以說是十分迅猛,每種語言在發(fā)展到一定的階段都會出現(xiàn)一些相應的依賴管理工具,而CocoaPods就是iOS的依賴管理工具

  • CocoaPods的源碼在GitHUB上管理,該項目起于2011年8月12日,經(jīng)過多年的發(fā)展,現(xiàn)在已經(jīng)成為iOS實際開發(fā)中標準的依賴工具.因為在開發(fā)中總是不可避免的用到一些第三方開源庫,CocoaPods的出現(xiàn)使我們在使用三方開源庫時能節(jié)約不少的時間,提升了開發(fā)者的工作效率.

二.為什么要用到CocoaPods

  • 大家都知道三方開源庫最普通的導入方式是手動添加,有的三方庫甚至要手動導入N個文件,而且每個文件都要手動導入,其中則容易出現(xiàn)紕漏.下面是普通導入方法的大致步驟:

    1.把開源庫的源代碼復制到項目當中.

    2.要添加上述所需的動態(tài)庫和框架.

    3.設置-ObjC,-fno-objc-arc等參數(shù).(解決匯編,arc/mrc之間沖突問題).

    4.管理他們的更新.

  • 但是當我們使用了CocoaPods以后,所有的三方開源庫就都被放到一個Podfile文件中.當需要添加三方開源庫的時候就pod install,更新的時候就pod update,操作簡單,一目了然...

三.CocoaPods的原理

  • CocoaPods的原理是將所有的依賴庫都放到另一個名為Pods的項目中,然后讓主項目依賴Pods項目,這樣,源碼管理工作都從主項目移到了Pods項目中。Pods項目最終會編譯成一個名為libPods.a的文件,主項目只需要依賴這個.a文件即可。

四.CocoaPods的安裝

  • CocoaPods可以方便地通過Mac自帶的RubyGems安裝。

  • 打開Terminal(Mac電腦自帶的終端),然后按照以下提示操作即可:

1.設置ruby的軟件源:
  • 這是因為ruby的軟件源rubygems.org因為使用亞馬遜的云服務,被我天朝屏蔽了,需要更新一下ruby的源,過程如下:

    gem sources -l (查看當前ruby的源)

    gem sources --remove https://rubygems.org/ (移除當前ruby的源)

    gem sources -a https://ruby.taobao.org/ (設置當前ruby的源為我天朝的)

    gem sources -l (再次查看當前ruby的源)

    如果Terminal輸出:

    *** CURRENT SOURCES ***

    https://ruby.taobao.org/

    就證明ruby的軟件源已經(jīng)設置OK了。

2.設置gem為最新版本:
  • 如果gem太老,可以嘗試用如下命令升級gem:

    sudo gem update --system

    升級成功后會提示: Latest version currently installed. Aborting.

3.執(zhí)行安裝CocoaPods命令:
  • 注意:OS X 10.11 升級,雖然官方聲稱只是一個小的升級,但對于開發(fā)者而言,cocoapods需要重新安裝,但按照以前的安裝方式,在Terminal輸入以下命令:

    sudo gem install cocoapods

    如果報以下錯誤:

    ERROR: While executing gem ... (Errno::EPERM)

    Operation not permitted - /usr/bin/xcodeproj

    解決方案1:

    執(zhí)行下面的命令并重啟

    sudo nvram boot-args="rootless=0"

    sudo reboot

    重啟之后, 執(zhí)行這個命令檢查

    sudo gem install cocoapods -V

    ps : 如果依舊有錯誤,使用第二個方案

    解決方案2:

    sudo gem install -n /usr/local/bin cocoapods

    pod setup

  • 還有一點需要注意,pod setup在執(zhí)行時,會輸出Setting up CocoaPods master repo,但是會等待比較久的時間。這步其實是 Cocoapods 在將它的信息下載到 ~/.cocoapods目錄下,如果你等太久,可以試著 cd 到那個目錄,用du -sh *來查看下載進度。

  • 安裝成功后,你會看到:Setup completed

五、Cocoapods的使用

  • 隨便以一種方式新建一個名為Podfile的文件放到你的工程根目錄下(不能寫成別的名字,也可以自己在工程根目錄里面直接新建)

    Podfile文件內(nèi)容的格式應該如下:

    platform :ios, '8.0' #(注明你的開發(fā)平臺以及版本,'8.0'忽略不寫即為最新版本)

    pod 'AFNetworking', '~> 2.5.3' #('~> 2.5.3'為版本號,忽略不寫即為最新版本)

    pod 'SDWebImage', '~> 3.7.2'

    然后在Terminal進入工程所在的根目錄(工程根目錄)中執(zhí)行 :

    pod install

  • 這樣,AFNetworking和SDWebImage就已經(jīng)下載完成并且設置好了編譯參數(shù)和依賴,以后使用的時候切記如下兩點:

    1.從此以后需要使用Cocoapods生成的 .xcworkspace文件來打開工程,而不是使用以前的.xcodeproj文件

    2.每次更改了Podfile文件,都需要重新執(zhí)行一次pod update命令

本文作者目的是再熟悉一遍CocoaPods的安裝,使用流程,讀了一篇帖子覺得寫得很好,故參照理解,復習了一遍,有什么寶貴意見歡迎大家留言.
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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

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