1. 程式人生 > >CocoaPods安裝和使用教程

CocoaPods安裝和使用教程

目錄

CocoaPods是什麼?

當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用它,必須得另外下載其他類庫,而其他類庫又用到其他類庫,“子子孫孫無窮盡也”,這也許是比較特殊的情況。總之小編的意思就是,手動一個個去下載所需類庫十分麻煩。另外一種常見情況是,你專案中用到的類庫有更新,你必須得重新下載新版本,重新加入到專案中,十分麻煩。如果能有什麼工具能解決這些惱人的問題,那將“善莫大焉”。所以,你需要 CocoaPods。

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

如何下載和安裝CocoaPods?

在安裝CocoaPods之前,首先要在本地安裝好Ruby環境。至於如何在Mac中安裝好Ruby環境,請google一下,本文不再涉及。

假如你在本地已經安裝好Ruby環境,那麼下載和安裝CocoaPods將十分簡單,只需要一行命令。在Terminator(也就是終端)中輸入以下命令(注意,本文所有命令都是在終端中輸入並執行的。什麼,你不知道什麼是終端?那請小編吃飯,小編告訴你):

sudo gem install cocoapods
    

但是,且慢。如果你在天朝,在終端中敲入這個命令之後,會發現半天沒有任何反應。原因無他,因為那堵牆阻擋了cocoapods.org。(你會問,我靠,這都要牆!是的,小編也納悶。)

但是,是的,又但是(不過是個可喜的“但是”)。我們可以用淘寶的Ruby映象來訪問cocoapods。按照下面的順序在終端中敲入依次敲入命令:

$ gem sources --remove https://rubygems.org/
        //等有反應之後再敲入以下命令
        $ gem sources -a http://ruby.taobao.org/
    

為了驗證你的Ruby映象是並且僅是taobao,可以用以下命令檢視:

$ gem sources -l
    

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

*** CURRENT SOURCES ***

        http://ruby.taobao.org/
    

上面所有的命令完成之時,在小編的終端上是這個的樣子:

Figure 1

這時候,你再次在終端中執行:

$ sudo gem install cocoapods
    

等上十幾秒鐘,CocoaPods就可以在你本地下載並且安裝好了,不再需要其他設定。

敲入以上命令時,小編終端上是這個樣子的(由於太長,僅擷取前面一部分):

Figure 2

看到這裡,你心裡會不會說,我靠!太爽了,這麼容易就可以下載並且安裝好了!是的,小編也是這麼想的。CocoPods就是這麼簡單,使用也十分簡單。繼續往下看吧。

如何使用CocoaPods?

好了,安裝好CocoPods之後,接下來就是使用它。所幸,使用CocoPods和安裝它一樣簡單,也是通過一兩行命令就可以搞定。

小編在這裡用兩種使用場景來具體說明如何使用CocoaPods。

場景1:利用CocoaPods,在專案中匯入AFNetworking類庫

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

$ pod search AFNetworking
    

過幾秒鐘之後,你會在終端中看到關於AFNetworking類庫的一些資訊。比如:

Figure 3

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

首先,我們需要在我們的專案中加入CocoaPods的支援。你可以跟隨小編的步驟,先利用Xcode建立一個名字CocoaPodsDemo的專案,用於以下的教程。建立好之後,在繼續下一步之前,小編先截圖,看看專案沒有支援CocoaPods時的專案Xcode目錄結構:

Figure 4

上圖等一下要跟專案支援CocoaPods之後的專案Xcode目錄結構做對比。

你看到這裡也許會問,CocoaPods為什麼能下載AFNetworking呢,而不是下載其他類庫呢?這個問題的答案是,有個檔案來控制CocoaPods該下載什麼。這個檔案就叫做“Podfile”(注意,一定得是這個檔名,而且沒有後綴)。你建立一個Podfile檔案,然後在裡面新增你需要下載的類庫,也就是告訴CocoaPods,“某某和某某和某某某,快到碗裡來!”。每個專案只需要一個Podfile檔案。

好吧,廢話少說,我們先建立這個神奇的PodFile。在終端中進入(cd命令)你專案所在目錄,然後在當前目錄下,利用vim建立Podfile,執行:

$ vim Podfile
    

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

platform :ios, '7.0'
        pod "AFNetworking", "~> 2.0"
    

注意,這段文字不是小編憑空生成的,可以在AFNetworking的github頁面找到。這兩句文字的意思是,當前AFNetworking支援的iOS最高版本是iOS 7.0, 要下載的AFNetworking版本是2.0。

然後儲存退出。vim環境下,儲存退出命令是:

:wq
    

這時候,你會發現你的專案目錄中,出現一個名字為Podfile的檔案,而且檔案內容就是你剛剛輸入的內容。注意,Podfile檔案應該和你的工程檔案.xcodeproj在同一個目錄下。

這時候,你就可以利用CocoPods下載AFNetworking類庫了。還是在終端中的當前專案目錄下,執行以下命令:

$ pod install
    

因為是在你的專案中匯入AFNetworking,這就是為什麼這個命令需要你進入你的專案所在目錄中執行。

執行上述命令之後,小編的終端出現以下資訊:

EricmatoMacBook-Pro:CocoaPodsDemo ericwang$ pod install
        Analyzing dependencies
        Downloading dependencies
        Installing AFNetworking (2.0.2)
        Generating Pods project
        Integrating client project

        [!] From now on use `CocoaPodsDemo.xcworkspace`.
    

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

你也許會鬱悶,為什麼會出現.xcodeproj檔案呢。這正是你剛剛執行$ pod install命令產生的新檔案。除了這個檔案,你會發現還多了另外一個檔案“Podfile.lock”和一個資料夾“Pods”。 點選 CocoaPodsDemo.xcworkspace 開啟之後工程之後,專案Xcode目錄結構如下圖:

Figure 5

你會驚喜地發現,AFNetwoking已經成功匯入專案了(紅框部分)!

現在,你就可以開始使用AFNetworking.h啦。可以稍微測試一下,在你的專案任意程式碼檔案中輸入:

#import <AFNetworking.h>
        或者
        #import "AFNetworking.h"
    

然後編譯,看看是否出錯。如果你嚴格按照小編上述的步驟來,是不可能出錯的啦。

至此,CocoPods的第一個應用場景講述完畢。別看小編寫了這麼多,其實過程是十分簡單的。總結一下就是:

  1. 先在專案中建立Podfile,Podfile的內容是你想匯入的類庫。一般類庫的原作者會告訴你匯入該類庫應該如何寫Podfile;
  2. 執行命令:`$ pod install.

下面,小編繼續講述第二種使用場景。

場景2:如何正確編譯執行一個包含CocoPods類庫的專案

你也許曾經遇到過(特別是新手iOS開發者)這種情況,好不容易在GitHub上找到一份程式碼符合自己想需求,興沖沖下載下來,一編譯,傻眼了,發現有各種各樣錯誤。一看,原來是缺失了各種其他第三方類庫。這時候莫慌,你再仔細一看,會發現你下載的程式碼包含了Podfile。沒錯,這意味著你可以用CocoaPods很方便下載所需要的類庫。

下面,小編以程式碼 UAAppReviewManager 為例來說明如何正確編譯執行一個包含CocoPods類庫的專案。

UAAppReviewManager是一個能夠讓你方便地將提醒使用者評分的功能加入你的應用中。當你去UAAppReviewManager的GitHub地址下載這份程式碼之後,開啟Example工程(UAAppReviewManagerExample),編譯,你會發現Xcode報告一大堆錯誤,基本都是說你編譯的這份程式碼找不到某某標頭檔案,這就意味著你要成功編譯UAAppReviewManager的Example程式碼,必須先匯入一些第三方類庫。同時你會發現在UAAppReviewManagerExample資料夾下面有三個跟CocosPods相關的檔案(資料夾):Podfile,Podfile.lock和Pods,如下圖:

Figure 6

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

$ pod update
    

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

Analyzing dependencies
        Fetching podspec for `UAAppReviewManager` from `../`
        Downloading dependencies
        Installing UAAppReviewManager (0.1.6)
        Generating Pods project
        Integrating client project

        [!] From now on use `UAAppReviewManagerExample.xcworkspace`.
    

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

Figure 7

根據終端的資訊提示,你以後就需用新產生的UAAppReviewManagerExample.xcworkspace來執行這個Example程式碼了。

開啟UAAppReviewManagerExample.xcworkspace,編譯執行,成功!如下圖:

Figure 8

注意,這裡有個小問題,如果剛剛你不是輸入$ pod update,而是輸入$ pod install,會發現類庫匯入不成功,並且終端出現下面提示:

[!] Required version (UAAppReviewManager (from `../`)) not found for `UAAppReviewManager`.
        Available versions: 0.1.6
    

這裡的意思大概是Podfile檔案過期,類庫有升級,但是Podfile沒有更改。$ pod install只會按照Podfile的要求來請求類庫,如果類庫版本號有變化,那麼將獲取失敗。但是 $ pod update會更新所有的類庫,獲取最新版本的類庫。而且你會發現,如果用了 $ pod update,再用 $ pod install 就成功了。

那你也許會問,什麼時候用 $ pod install,什麼時候用 $ pod update 呢,我又不知道類庫有沒有新版本。好吧,那你每次直接用 $ pod update 算了。或者先用 $ pod install,如果不行,再用 $ pod update

好了,小編就囉嗦到這裡吧。上述都只是CocoaPods的最基本用法。要繼續研究CocoaPods其他高階用法,請點選這裡CocoaPods Wiki 。

當然,如果你覺得小編上面的敘述有問題,或者你有補充,可以發郵件給小編:[email protected] 。

另外,如果你希望小編寫其他iOS技術類的文章,也可以發信給小編。

相關推薦

IOS開發-CocoaPods安裝使用教程及常見錯誤

CocoaPods是iOS最常用的第三方類庫管理工具,絕大部分有名的開源類庫都支援CocoaPods。所以,作為iOS程式設計師,掌握CocoaPods的使用是必備技能。 下面我們就來講一下CocoaPods的安裝流程。 第一步:安裝cocoapods sudo gem

iOS開發利器-CocoaPods安裝使用教程

開發iOS專案時肯定會用到許多第三方專案,比如說:ASIHttprequest,JSONKit等等,一些類庫可能又關聯著其他類庫,如果超過一定的數量,手動去下載這些類庫難免會有一些麻煩,並且還要去配置引數,等到類庫更新的時候,我們還得重新下載一份,這些沒有技術含量的活有

iOS開發-CocoaPods安裝使用教程

本文是對原文一些錯誤的修正已經添加了自己的理解。CocoaPods安裝和使用教程目錄CocoaPods是什麼?當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用它,必須得另外下載其他類

CocoaPods安裝使用教程以及一些常見問題

CocoaPods安裝和使用教程 目錄 CocoaPods是什麼?如何下載和安裝CocoaPods?如何使用CocoaPods? 場景1:利用CocoaPods,在專案中匯入AFNetworking類庫場景2:如何正確編譯執行一個包含CocoPods類庫的專案補充Coc

iOS 開發 CocoaPods安裝使用教程

CocoaPods安裝和使用教程 目錄 CocoaPods是什麼? 當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用它,必須得另外下載其他類庫,而其他類庫又用到其他類庫,“子子孫

CocoaPods安裝使用教程

目錄 CocoaPods是什麼? 當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用它,必須得另外下載其他類庫,而其他類庫又用到其他類庫,“子子孫孫無窮盡也”,這也許是比較特殊

1、CocoaPods安裝使用教程

目錄 CocoaPods是什麼? 當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用它,必須得另外下載其他類庫,而其他類庫又用到其他類庫,“子子孫孫無窮盡也”,這也許是比較特殊的情況。總之小編的意思就是,手動一個個

CocoaPods安裝使用教程 自我實踐

CocoaPods是一個可以幫你集中管理第三方庫的開源專案,執行在Ruby的環境下,基於GitHub託管優勢,你可以很方便的查閱目前依賴於CocoaPods的資源。並且,CocoaPods是可靠,穩定,安全的.可以為你在使用第三方庫資源時節省大部分的配置和部署時間.更專心的專

CocoaPods 安裝使用教程(最新相容swift)

CocoaPods是什麼? 當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所 以要使用它,必須得另外下載其他類庫,而其他類庫又用到其他類 庫,“子子孫孫無窮盡也”,這也許是比較特殊的情況。總之小編的 意思就是,手

cocoaPods安裝使用

創建 working ini 裏的 ren 快的 mas 嘗試 sources cocoaPods 安裝和使用 第一步:替換ruby源 gem sources -l 查看當前ruby的源 gem sources --

iOS CocoaPods安裝使用

轉載自: https://blog.csdn.net/jiankeufo/article/details/79362660 版權宣告:本文為博主原創文章,未經博主允許不得轉載。    https://blog.csdn.net/qq_18505715/artic

CocoaPods安裝使用教程

CocoaPods是什麼? * 如何下載和安裝CocoaPods? * 如何使用CocoaPods? * 場景1:利用CocoaPods,在專案中匯入AFNetworking類庫 * 場景2:如何正確編譯執行一個包含CocoPods類庫的

CocoaPods安裝使用詳解

在進行iOS開發的時候,總免不了使用第三方的開源庫,比如AFNetworking、SDWebImage等等。使用這些庫的時候通常需要: 下載開源庫的原始碼並引入工程 向工程中新增開源庫使用到的framework 解決開源庫和開源庫以及開源庫和工程之間的依賴關

iOS開發 -- CocoaPods安裝使用步驟(詳解)

CocoaPods是什麼? 當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用 它,必須得另外下載其他類庫,而其他類庫又用到其他類庫,這也許是比較特殊的情況。總之意思就是,手動

CocoaPods安裝使用(包括建立私有庫)

CocoaPods安裝和使用 1. CocoaPods簡介 每種語言發展到一個階段,就會出現相應的依賴管理工具,例如 Java 語言的 Maven,nodejs 的 npm。隨著 iOS 開發者的增多,業界也出現了為 iOS 程式提供依賴管理的工具,它的名字叫做:Co

看一遍就會的CocoaPods安裝使用教程

什麼是CocoaPods? CocoaPods是專門為iOS工程提供對第三方庫的依賴的管理工具,通過CocoaPods,我們可以更方便地管理每個第三方庫的版本,而且不需要我們做太多的配置。直觀、集中和自動化地管理我們專案的第三方庫。 我們都有這樣的經歷,當我們新增第三方庫的時候,需要匯入一堆相關依賴庫,更

CocoaPods環境配置、安裝使用教程

如何在Mac OS X上安裝 Ruby執行環境  對於新入門的開發者,如何安裝 Ruby和Ruby Gems 的執行環境可能會是個問題,本頁主要介紹如何用一條靠譜的路子快速安裝 Ruby 開發環境。
此安裝方法同樣適用於產品環境! 系統需求 首先確定作業系統環境,不建議

2、CocoaPods外掛的安裝使用教程(外掛版本)

CocoaPods外掛的安裝和使用教程 一、CocoaPods是什麼?     CocoaPods是第三方庫的一個管理工具,可以用於下載第三方庫和更新第三方庫。我們可以把它當作一個外掛安裝在Xcode中。 二、CocoaPods的下載    三、CocoaPods如

Android 開發之Windows環境下Android Studio安裝使用教程(圖文詳細步驟)

9.png 虛擬機 jdk版本 編寫 clip 開發平臺 集成開發 arc 電腦安裝 鑒於谷歌最新推出的Android Studio備受開發者的推崇,所以也跟著體驗一下。 一、介紹Android Studio Android Studio 是一個Android

redis學習教程一《Redis的安裝配置》

遠程服務 name 工具 列表 端口號 裏的 redis服務器 映射 tin redis學習教程一《Redis的安裝和配置》 Redis的優點 以下是Redis的一些優點。 異常快 - Redis非常快,每秒可執行大約110000次的設置(SET)操作,每秒大約可執