史上最詳細(xì)的CocoaPods安裝教程(圖文)
雖然網(wǎng)上關(guān)于CocoaPods安裝教程多不勝數(shù),但是我在安裝的過(guò)程中還是出現(xiàn)了很多錯(cuò)誤,所以大家可以照下來(lái)步驟裝一下,我相信會(huì)很好用.
前言
在iOS項(xiàng)目中使用第三方類庫(kù)可以說(shuō)是非常常見(jiàn)的事,但是要正確地配置他們有時(shí)候是非常繁瑣的事情,幸運(yùn)的是CocoaPods是一個(gè)很好的解決方案。
什么是CocoaPods
CocoaPods是OS X和iOS下的一個(gè)第三類庫(kù)管理工具,通過(guò)CocoaPods工具我們可以為項(xiàng)目添加被稱為“Pods”的依賴庫(kù)(這些類庫(kù)必須是CocoaPods本身所支持的),并且可以輕松管理其版本。
Cocoapods意義體現(xiàn)在兩個(gè)方面。第一,在引入第三方庫(kù)時(shí)它可以自動(dòng)為我們完成各種各樣的配置,包括配置編譯階段、連接器選項(xiàng)、甚至是ARC環(huán)境下的-fno-objc-arc配置等。第二,使用CocoaPods可以很方便地查找新的第三方庫(kù),這些類庫(kù)是比較“標(biāo)準(zhǔn)的”,而不是網(wǎng)上隨便找到的,這樣可以讓我們找到真正好用的類庫(kù)。
接下來(lái)我們將介紹CocoaPods的使用。
CocoaPods的核心組件
CocoaPods是用Ruby寫的,并劃分成了若干個(gè)Gem包。
CocoaPods在解析執(zhí)行過(guò)程中最重要的幾個(gè)包的路徑分別是:CocoaPods/CocoaPods、 CocoaPods/Core和 CocoaPods/Xcodeproj。
CocoaPods / CocoaPod:這是面向用戶的組件,每當(dāng)執(zhí)行一個(gè)pod命令時(shí),這個(gè)組件將被激活。它包括了所有實(shí)用CocoaPods的功能,并且還能調(diào)用其他gem包來(lái)執(zhí)行任務(wù)。
CocoaPods / Core:Core gem提供了與CocoaPods相關(guān)的文件(主要是podfile和podspecs)的處理。
Podfile:該文件用于配置項(xiàng)目所需要的第三方庫(kù),它可以被高度定制。本文中我們主要在這里做動(dòng)作。
Podspec:該文件描述了一個(gè)庫(kù)將怎樣被添加進(jìn)工程中。.podspec文件可以標(biāo)識(shí)該第三方庫(kù)所需要的源碼文件、依賴庫(kù)、編譯選項(xiàng),以及其他第三方庫(kù)需要的配置。
CocoaPods / Xcodeproj:這個(gè)包負(fù)責(zé)處理工程文件,它能創(chuàng)建以及修改.xcodeproj文件和.xcworkspace文件。它也可以作為一個(gè)獨(dú)立的包使用,當(dāng)你要編寫修改項(xiàng)目文件的腳本時(shí),可以考慮使用CocoaPods/Xcodeproj。
Cocoapods安裝步驟
1、升級(jí)Ruby環(huán)境
終端輸入:$gem update --system
此時(shí)會(huì)出現(xiàn)
ERROR: While executing gem ... (Gem::FilePermissionError)
You don‘t have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
zijingMacBook-Pro:~ shiyunlei$ sudo gem update —system
這個(gè)是因?yàn)槟銢](méi)有權(quán)限去更新Ruby
這個(gè)時(shí)候你可以在終端使用:$sudo gem update —system來(lái)進(jìn)行升級(jí)
這個(gè)時(shí)候表示Ruby升級(jí)完成。
2、安裝CocoaPods時(shí)我們要訪問(wèn)cocoapods.org,該網(wǎng)站可能被我們大天朝墻了,這樣下載安裝可能會(huì)是龜速,幸好我們可以用淘寶的Ruby鏡像來(lái)訪問(wèn)該網(wǎng)站,方法如下:
gem sources --remove https://rubygems.org/
gem sources -a http://ruby.taobao.org/
可以使用下面的命令(紅色部分)查看是否更換鏡像成功(如下圖所示):
$ gem sources -l
3、安裝Cocoapods,在終端輸入命令
$sudo gem install cocoapods
這個(gè)時(shí)候會(huì)提示你輸入密碼,注:在終端輸入密碼不會(huì)有提示,光標(biāo)也不會(huì)移動(dòng),一定要注意
開(kāi)始安裝,如下圖:PS:這個(gè)過(guò)程可能花費(fèi)時(shí)間比較長(zhǎng)
安裝成功如下:
4、使用search命令搜索類庫(kù)名:
$pod search AFNetworking
如果CocoaPods支持,將會(huì)輸出搜索到的所有類庫(kù)版本和信息,以及在Podfile中配置的寫法,終端返回信息如下:
-> AFNetworking (2.3.1)
A delightful iOS and OS X networking framework.
pod ‘AFNetworking‘, ‘~> 2.3.1'(這個(gè)語(yǔ)句是需要在編輯Podfile的時(shí)候輸入的命令,即是如何安裝下載相關(guān)類庫(kù)的指令)
- Homepage: https://github.com/AFNetworking/AFNetworking
- Source: https://github.com/AFNetworking/AFNetworking.git
- Versions: 2.3.1, 2.3.0, 2.2.4, 2.2.3, 2.2.2, 2.2.1, 2.2.0, 2.1.0,
2.0.3, 2.0.2, 2.0.1, 2.0.0, 2.0.0-RC3, 2.0.0-RC2, 2.0.0-RC1, 1.3.4, 1.3.3,
1.3.2, 1.3.1, 1.3.0, 1.2.1, 1.2.0, 1.1.0, 1.0.1, 1.0, 1.0RC3, 1.0RC2, 1.0RC1,
0.10.1, 0.10.0, 0.9.2, 0.9.1, 0.9.0, 0.7.0, 0.5.1 [master repo]
- Sub specs: - AFNetworking/Serialization (2.3.1) -
AFNetworking/Security (2.3.1) - AFNetworking/Reachability (2.3.1) -
AFNetworking/NSURLConnection (2.3.1) - AFNetworking/NSURLSession (2.3.1)
- AFNetworking/UIKit (2.3.1)
-> AFNetworking+AutoRetry (0.0.5)
Auto Retries for AFNetworking requests
pod ‘AFNetworking+AutoRetry‘, ‘~> 0.0.5‘
- Homepage: https://github.com/shaioz/AFNetworking-AutoRetry
- Source: https://github.com/shaioz/AFNetworking-AutoRetry.git
- Versions: 0.0.5, 0.0.4, 0.0.3, 0.0.2, 0.0.1 [master repo]
5、需要在工程中創(chuàng)建一個(gè)Podfile文件,
使用命令:
$cd /Users/shiyunlei/Desktop/CocoapodsSample
(進(jìn)入工程目錄,cd后面的是工程的路徑)
$ touch Podfile
(創(chuàng)建Podfile文件)
然后使用vim編輯Podfile文件,使用命令:
$ vim Podfile
進(jìn)入如下界面
然后緊接著按鍵盤上的“i”鍵,變成如下?tīng)顟B(tài),這個(gè)時(shí)候可以對(duì)Podfile文件進(jìn)行編輯:
$platform:ios, ‘7.0‘
$ pod ‘AFNetworking‘, ‘~> 2.3.1‘
在編輯完成后按“esc”,
在按“:”,這個(gè)時(shí)候輸入wq,點(diǎn)擊回車,保存并退出。
這個(gè)時(shí)候打開(kāi)Podfile文件就會(huì)看到里面添加了剛才在終端輸入的一行語(yǔ)句,如下圖
然后在終端輸入命令安裝相應(yīng)的第三方類庫(kù)
$pod install
因?yàn)檫@個(gè)過(guò)程需要下載相應(yīng)的類庫(kù),所以時(shí)間和網(wǎng)速有關(guān)。
安裝成功之后截圖如下:
這個(gè)時(shí)候會(huì)看到之后打開(kāi)工程都需要從類型為工程名.xcworkspace文件打開(kāi)。
史上最詳細(xì)的CocoaPods安裝教程就此結(jié)束了,如果還有什么疑問(wèn)可以查看下面的相關(guān)文章。
相關(guān)文章
iOS中UIWebView網(wǎng)頁(yè)加載組件的基礎(chǔ)及使用技巧實(shí)例
UIWebView是開(kāi)發(fā)中很常用的應(yīng)用內(nèi)調(diào)用網(wǎng)頁(yè)瀏覽的控件,這里整理了一些iOS中UIWebView網(wǎng)頁(yè)加載組件的基礎(chǔ)及使用技巧實(shí)例 ,需要的朋友可以參考下2016-06-06iOS開(kāi)發(fā)之級(jí)聯(lián)界面(推薦界面)搭建原理
這篇文章主要為大家詳細(xì)介紹了iOS級(jí)聯(lián)界面(推薦界面)搭建原理,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08如何通過(guò)Objective-C的枚舉學(xué)習(xí)iOS中位操作.md詳解
這篇文章主要給大家介紹了關(guān)于如何通過(guò)Objective-C的枚舉學(xué)習(xí)iOS中位操作.md的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)各位iOS開(kāi)發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03iOS獲取設(shè)備唯一標(biāo)識(shí)的8種方法
這篇文章主要為大家詳細(xì)介紹了iOS獲取設(shè)備唯一標(biāo)識(shí)的8種方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11iOS如何自定義控制器轉(zhuǎn)場(chǎng)動(dòng)畫(huà)push詳解
在平時(shí)開(kāi)發(fā)中,有時(shí)候需要一些轉(zhuǎn)場(chǎng)動(dòng)畫(huà)給界面調(diào)整增添一些活力,而實(shí)現(xiàn)這些動(dòng)畫(huà)相對(duì)比較繁瑣。下面這篇文章主要給大家介紹了關(guān)于iOS如何自定義控制器轉(zhuǎn)場(chǎng)動(dòng)畫(huà)push的相關(guān)資料,需要的朋友可以參考下。2017-12-12swift 單例的實(shí)現(xiàn)方法及實(shí)例
這篇文章主要介紹了swift 單例的實(shí)現(xiàn)方法及實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-07-07IOS開(kāi)發(fā)之手勢(shì)響應(yīng)事件優(yōu)先級(jí)的實(shí)例詳解
這篇文章主要介紹了IOS開(kāi)發(fā)之手勢(shì)響應(yīng)事件優(yōu)先級(jí)的實(shí)例詳解的相關(guān)資料,希望通過(guò)本文大家能夠掌握手勢(shì)響應(yīng)優(yōu)先級(jí)的使用方法,需要的朋友可以參考下2017-09-09