iOS CocoaPods簡介及基本使用

QiShare發表於2018-12-24

級別: ★☆☆☆☆
標籤:「iOS」「CocoaPods」「依賴庫」
作者: MrLiuQ
審校: QiShare團隊

問題:在我們日常開發中,難免會用到一些第三方庫(比如AFNetworkingSDWebImage...),而這些第三方庫也許會引用一些別的第三方庫,於是我們又要引入別的第三方庫。(古語:子子孫孫無窮盡也) 另外,如果第三方庫更新了,還要手動重新引入新的庫。(總之就是很麻煩)

  • 需求:是否能有個工具,能幫助開發者們管理第三方庫?在第三方庫更新時,能通過一些簡單命令,及時更新第三方庫?

於是,強大的CocoaPods誕生了。 今天我們就來介紹一下CocoaPods,以及CocoaPods的“安裝”和“基本使用”。


一、CocoaPods簡介:

CocoaPods是開發iOS專案的庫管理工具。它擁有超過55,000個庫,並在超過300萬個應用程式中使用。通過CocoaPods可以幫助我們優雅地擴充套件專案,便捷的匯入第三方開源庫。

附:CocoaPods官網


二、CocoaPods的環境搭建:

  • 第一步:首先在安裝CocoaPods之前,需要安裝好***Ruby***環境。

  • 第二步:使用ruby-china的Ruby映象源。 先用命令:$ gem sources --remove https://rubygems.org/。 再用命令:$ gem sources -a https://gems.ruby-china.com/。 為了驗證Ruby映象源是ruby-china,可使用命令:$ gem sources -l

  • 第三步:安裝cocoaPods: 使用命令:sudo gem install cocoapods (若無讀寫許可權:用sudo gem install -n /usr/local/bin cocoapods代替。)


三、CocoaPods的基本使用:

步驟如下:

1. 先通過terminal找到專案目錄,並新建Podfile。

使用命令:pod init

2. 開啟Podfile檔案。

使用命令:open Podfile

3. 搜尋需要匯入的框架。

使用命令:pod search 框架名

4. 把所要匯入的框架資訊寫入Podfile檔案。
platform:ios,'10.0'

target :你的專案名字 do
pod'AFNetworking','~>3.2.1'
pod'SDWebImage'
...

end
複製程式碼

關於版本範圍:

符號 含義
> 0.1 高於0.1版本(不包含0.1版本)的任意一個版本
>= 0.1 高於0.1版本(包含0.1版本)的任意一個版本
< 0.1 低於0.1版本(不包含0.1版本)的任意一個
<= 0.1 低於0.1版本(包含0.1版本)的任意一個
~> 0.1.2 版本 0.1.2的版本到0.2 ,不包括0.2。
等效於>= 0.1.2並且 <0.2.0,並且始終是你指定範圍內的最新版本。
不指定 預設為最新版本
5. 安裝第三方框架

使用命令:pod install (PS:如果當前網路狀況不好,可以不更新索引庫,直接用命令pod install --no-repo-update即可。)


四、舉例

這裡小編舉了一個匯入AFNetworkingSDWebImage框架w的例子。

  1. 我們新建一個工程:QiCocoaPods。

  2. 通過終端找到工程所在目錄 並 新建Podfile檔案,如下圖:

    iOS CocoaPods簡介及基本使用

  3. 使用命令:pod search AFNetworking 就出現如下介面:

    iOS CocoaPods簡介及基本使用

  4. 使用命令:open podfile開啟Podfile檔案。寫入框架資訊,如圖:

    iOS CocoaPods簡介及基本使用

  5. 安裝指定第三方庫:使用命令pod install。如下圖:

iOS CocoaPods簡介及基本使用

  1. 開啟.xcworkspace檔案,開始程式設計。(.xcworkspace代替了.xcodeproj

五、補充答疑

  • 補充一:pod installpod update的區別?

答: pod install:安裝類庫,第一次使用時,用pod install,安裝所需要的所有類庫。後續使用時,會引入之前沒有引入的類庫。 pod update:更新所有的類庫到指定版本範圍內的最新版本。

  • 補充二:pod installpod install --no-repo-update的區別?

答: pod install:在安裝前會更新本地repo庫。 pod install --no-repo-update:不會更新本地repo庫,直接安裝pod。


作者微信:

iOS CocoaPods簡介及基本使用

關注我們的途徑有:
QiShare(簡書)
QiShare(掘金)
QiShare(知乎)
QiShare(GitHub)
QiShare(CocoaChina)
QiShare(StackOverflow)
QiShare(微信公眾號)

推薦文章:
iOS 掃描二維碼/條形碼
iOS 瞭解Xcode Bitcode
iOS 重繪之drawRect
iOS 編寫高質量Objective-C程式碼(八)
奇舞週刊

相關文章