iOS使用CocoaPods教程

2021-08-27 18:10:08 字數 4096 閱讀 7328

cocoapods是什麼?

cocoapods應該是ios最常用最有名的類庫管理工具了,上述兩個煩人的問題,通過cocoapods,只需要一行命令就可以完全解決,當然前提是你必須正確設定它。重要的是,絕大部分有名的開源類庫,都支援cocoapods。所以,作為ios程式設計師的我們,掌握cocoapods的使用是必不可少的基本技能了。

cocoapods的好處

1、在引入第三方庫時它可以自動為我們完成各種各樣的配置,包括配置編譯階段、聯結器選項、甚至是arc環境下的-fno-objc-arc配置等。

2、使用cocoapods可以很方便地查詢新的第三方庫,這些類庫是比較「標準的」,而不是網上隨便找到的,這樣可以讓我們找到真正好用的類庫。

cocoapods的安裝

1:公升級ruby環境

gem是ruby的包管理器

sudo gem update --system
之後會提示輸入密碼,然後等待公升級完成。

2:使用國內的rubygems映象

因為那堵牆阻擋了cocoapods.org,我們可以用國內的ruby映象來訪問cocoapods。按照下面的順序在終端中敲入依次敲入命令:

gem sources --remove 

//等有反應之後再敲入以下命令

gem sources -a 

//或者

gem sources -a

輸入以下命令檢視當前映象:

gem sources -l
只有在終端中出現下面文字才表明你上面的命令是成功的:

*** current sources ***

3:安裝cocoapods

上面所有的命令完成之後,這時候,你在終端中執行:

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

sudo chmod +rx /usr/local/bin

如何使用cocoapods

1:利用cocoapods,在專案中匯入afnetworking類庫

afnetworking類庫在github位址是:

為了確定afnetworking是否支援cocoapods,可以用cocoapods的搜尋功能驗證一下。在終端中輸入:

pod search afnetworking
過幾秒鐘之後,你會在終端中看到關於afnetworking類庫的一些資訊。

這說明,afnetworking是支援cocoapods,所以我們可以利用cocoapods將afnetworking匯入你的專案中。

首先,我們需要在我們的專案中加入cocoapods的支援。先利用xcode建立乙個名字demoexample的專案。

在專案所在根目錄下(即工程檔案.xcodeproj所在目錄),利用vim建立podfile:

vim podfile
然後在podfile檔案中輸入以下文字:

#source ''

source ''

#忽略第三方sdk警告

inhibit_all_warnings!

target 'demoexample' do

#網路請求

pod 'afnetworking', "~> 4.0"

end

target 'demoexample' 與專案的target名保持一致。

pod對版本號的控制

pod 『afnetworking』 //不指定依賴庫版本,表示每次都獲取最新版本

pod 『afnetworking』, 『2.0』 //只使用2.0版本

pod 『afnetworking』, 『> 2.0』 //使用高於2.0的版本

pod 『afnetworking』, 『>= 2.0』 //使用大於或等於2.0的版本

pod 『afnetworking』, 『< 2.0』 //使用小於2.0的版本

pod 『afnetworking』, 『<= 2.0』 //使用小於或等於2.0的版本

pod 『afnetworking』, 『~> 0.1.2』 //使用大於等於0.1.2但小於0.2的版本

pod 『afnetworking』, 『~>0.1』 //使用大於等於0.1但小於1.0的版本

pod 『afnetworking』, 『~>0』 //高於0的版本,寫這個限制與什麼都不寫是同樣效果,皆表示使用最新版本

pod install
執行上述命令之後,終端出現以下資訊:

$ pod install

analyzing dependencies

downloading dependencies

installing afnetworking (2.0.2)

generating pods project

integrating client project

[!] from now on use `demoexample.xcworkspace`.

最後一句話意思是:以後開啟專案就用 demoexample.xcworkspace 開啟,而不是之前的.xcodeproj檔案。

xcworkspace檔案是執行pod install命令產生的新檔案。除了這個檔案,你會發現還多了另外乙個檔案「podfile.lock」和乙個資料夾「pods」。

至此afnetwoking已經成功匯入專案了。

可以稍微測試一下,在你的專案任意**檔案中輸入:

#import
然後編譯,看看是否出錯。

總結一下就是:

先在專案中建立podfile,podfile的內容是你想匯入的類庫。一般類庫的原作者會告訴你匯入該類庫應該如何寫podfile;

執行命令:$ pod install.

2:如何正確編譯執行乙個包含cocopods類庫的專案

這時候,開啟終端,進入工程所在的目錄,也就是和podfile在同一目錄下,和場景1一樣,輸入以下命令(由於已經有podfile,所以不需要再建立podfile):

pod update
過幾秒(也許需要十幾秒,取決於你的網路狀況)之後,終端出現:

analyzing dependencies

fetching podspec for `demoexample` from `../`

downloading dependencies

installing demoexample (0.1.1)

generating pods project

integrating client project

[!] from now on use `demoexample.xcworkspace`.

這時候,再回到demoexample資料夾,會看到多了乙個檔案demoexample.xcworkspace:

根據終端的資訊提示,你以後就需用新產生的demoexample.xcworkspace來執行這個example**了。

開啟demoexample.xcworkspace,編譯執行,成功!

如果是要更新某乙個pod庫,可以執行下面命令:

pod update podname
常見錯誤處理:

【錯誤】執行pod search提示錯誤[!] unable to find a pod with name, author, summary, or description matching

解決辦法:

(1)執行pod setup

(2)刪除~/library/caches/cocoapods目錄下的search_index.json檔案

(3)執行pod search

iOS開發CocoaPods使用

一 為什麼用cocoapods ios開發時,專案中會引用許多第三方庫,cocoapods 可以用來方便的統一管理這些第三方庫。二 安裝 由於網上的教程基本都大同小異,但細節之處還不是很完善,所以借機會在這裡補充下 1 ruby環境搭建 當前安裝環境為mac 10.10.5 mac os本身自帶ru...

iOS之CocoaPods的使用

sudo gem install cocoapods一般當我們按回車時,會出現卡頓,半天沒有反應,不要擔心,這是因為ruby的預設源使用的是cocoapods.org,國內訪問這個 有時候會有問題,網上的一種解決方案是將遠替換成 的,替換方式如下 首先我們關閉終端,重新開啟 gem sources ...

iOS開發 CocoaPods安裝和使用

隨著 ios 開發者的增多,業界也出現了為 ios 程式提供依賴管理的工具,它的名字叫做 cocoapods。cocoapods專案的原始碼 在 github 上管理。該專案開始於 2011 年 8 月 12 日,經過多年發展,現在已經成為 ios 開發事實上的依賴管理標準工具。開發 ios 專案不...