CocoaPods的使用

這一段做項目會用到一些開源庫比如VLC窘拯,七牛云存儲都是需要用CocoaPods才能運行,索性把這個總結(jié)一下

通過CocoaPods,我們可以將第三方的依賴庫統(tǒng)一管理起來烹吵,配置和更新只需要通過簡單的幾行命令即可完成,大大的提高了實際開發(fā)中的工作效率毛甲,使我們的主要精力集中到更重要的事情上去年叮。

1.安裝CocoaPods

我的當前Mac環(huán)境

安裝CocoaPods之前,先確保本地有Ruby環(huán)境玻募,因為CocoaPods運行于Ruby之上只损,默認情況下,Mac是自帶了Ruby環(huán)境的,可以通過命令行ruby -v查看當前Ruby的版本

我的當前Ruby版本

接下來我們就可以通過如下命令安裝CocoaPods了跃惫。

  1. $?sudo?gem?install?cocoapods

輸入上述命令后可能會無響應(yīng)叮叹,那是因為你身在天朝,偉大的墻攔住了你的去路爆存,

不過沒關(guān)系蛉顽,我們可以通過淘寶的Ruby鏡像來訪問Cocoapods,在終端輸入如下命令將Ruby鏡像替換為淘寶的先较。替換方式如下:

$?gem?sources?--remove?https://rubygems.org/??

//等有反應(yīng)之后再敲入以下命令??

$?gem?sources?-a?http://ruby.taobao.org/??


要想驗證是否替換成功了携冤,可以執(zhí)行:$?gem?sources 1 正常的輸出是:

***?CURRENT?SOURCES?***???


http://ruby.taobao.org/???


接下來就可以重新運行安裝命令來安裝CocoaPods了,根據(jù)你的網(wǎng)絡(luò)情況闲勺,幾秒或十幾秒后安裝過程就完成了曾棕,總的來說,安裝過程還是比較簡單的

安裝1
安裝2(完成)

2.安裝過程中可能遇到的問題

(1)gem版本過老

gem是管理Ruby庫和程序的標準包菜循,如果它的版本過低也可能導(dǎo)致安裝失敗翘地,解決方案自然是升級gem,執(zhí)行下述命令即可:$?sudo?gem?update?--system?

(2)安裝完成后執(zhí)行pod setup命令時報錯

/Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:298:in?`to_specs':?Could?not?find?'cocoapods'?(>=?0)?among?6?total?gem(s)?(Gem::LoadError)??

????from?/Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:309:in?`to_spec'??

????from?/Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_gem.rb:53:in?`gem'??

????from?/Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/bin/pod:22:in?`<main>'
這就是路徑設(shè)置的問題癌幕,可以通過執(zhí)行:$?rvm?use?ruby-1.9.3-p448??

正確安裝后的結(jié)果是

已經(jīng)正確安裝了

3.使用CocoaPods

通過集成Qiniu類庫來演示如何使用CocoaPods來做依賴庫管理衙耕。首先,建立一個xcode工程勺远,命名為CocoaPodsTestDemo

創(chuàng)建新工程

這里我們要集成Qiniu橙喘,可以先通過如下命令來判斷其是否支持CocoaPods

$?pod?search Qiniu
?出來的結(jié)果

檢測完畢后我們來到工程CocoaPodsTest的目錄下,新建一個名為Podfile的文件(這里通過命令行創(chuàng)建)

$?vim?Podfile 

這個Podfile文件的作用是配置依賴庫信息胶逢,就是告訴CocoaPods去下載和管理哪些依賴庫渴杆,文件創(chuàng)建好以后,打開文件并加入如下內(nèi)容宪塔。(vim打開文件后按i進入插入模式磁奖,編輯完成后按esc退出編輯模式,接著輸入:wq保存并退出文件)


編輯想要添加的依賴庫

這時候某筐,工程目錄下就會有一個Podfile文件了比搭,注意必須和.xcodeproj在同一個目錄下。接下來就可以使用CocoaPods來安裝并管理Qiniu庫了南誊,確保命令行當前路徑是在CocoaPodsTest目錄下身诺,運行如下命令。

$?pod?install 

安裝完成后會提示如下信息抄囚,并且我們的工程目錄下會多出一個.xcworkspace結(jié)尾的文件霉赡,命令行信息綠色部分提醒我們“從此使用CocoaPodsTest.xcworkspace來打開項目”。

添加成功后的綠色部分

通過CocoaPodsTest.xcworkspace來打開項目幔托,這時穴亏,我們的項目工程結(jié)構(gòu)就會變成下圖這樣蜂挪,多出一個名為Pods的依賴工程,打開Pods文件夾后嗓化,發(fā)現(xiàn)Qiniu已經(jīng)在里面了


依賴成功后的工程目錄

這時候就可以在項目文件中引入QiniuSDK.h了棠涮,這時候如果你發(fā)現(xiàn)import的時候沒有提示QiniuSDK的文件,可以在target-Build Settings下修改“User Header Search Paths”項刺覆,新增${SRCROOT}并選擇rcursive严肪,如下圖。

更改頭路徑

設(shè)置完成后就可以在文件中直接引用第三方庫的文件并使用了谦屑。

可以正常引用第三方庫了

到此驳糯,新建工程并使用CocoaPods來管理依賴庫的過程就完成了,如果是直接使用已有CocoaPods的項目氢橙,則需要首先運行一下pod update命令來更新項结窘,然后照樣通過.xcworkspace來打開工程。

如果需要依賴多個第三方類庫充蓝,只需要修改Podfile文件的配置,然后運行pod update命令即可喉磁,比如新增一個MBProgressHUD的依賴庫谓苟,首先執(zhí)行pod searchMBProgressHUD 查看一下MBProgressHUD的配置信息,修改Podfile文件协怒,在后面增加MBProgressHUD的對應(yīng)配置信息涝焙,然 后運行pod update命令就完成了對MBProgressHUD的集成。

在這個地方把要添加的添加上
查詢以下該庫
執(zhí)行更新操作就行了
最終的效果

如果類庫有更新孕暇,查看更新配置并執(zhí)行pod update即可簡單完成了仑撞,從此從手動更新繁重的體力勞動中解脫出來

簡單小結(jié)一下:


安裝CocoaPods


新建項目并在工程根目錄下新建Podfile文件,配置需要管理的第三方庫


運行pod install下載安裝第三方庫




**********************************************************************

1.安裝CocoaPods

(1)先確保本地有Ruby環(huán)境 CocoaPods運行在Ruby環(huán)境之上 mac自帶有

查看當前Ruby環(huán)境? ruby -v

(2)終端輸入如下命令(把Ruby鏡像指向taobao妖滔,避免被墻)

gem sources --remove https://rubygems.org/

gem sources -a https://ruby.taobao.org/

gem sources 1

2.下載安裝CocoaPods

sudo gem install cocoapods 輸入電腦密碼

Successfully installed cocoapods-0.39.0 說明已經(jīng)成功

3.使用CocoaPods

(1)先通過命令看是否支持 pod search AFNetworking

(2)檢測完畢后我們來到工程CocoaPodsTest的目錄下隧哮,新建一個名為Podfile的文件

vim Podfile

這個Podfile文件的作用是配置依賴庫信息,就是告訴CocoaPods去下載和管理哪些依賴庫座舍,文件創(chuàng)建好以后沮翔,打開文件并加入如下內(nèi)容。(vim打開文件后按i進入插入模式曲秉,編輯完成后按esc退出編輯模式采蚀,接著輸入:wq保存并退出文件)

platform :ios, ‘7.0’

pod ‘AFNetworking’, ‘~> 2.6.3’

(3)這時候,工程目錄下就會有一個Podfile文件了承二,注意必須和.xcodeproj在同一個目錄下榆鼠。接下來就可以使用CocoaPods來安裝并管理AFNetworking庫了,確保命令行當前路徑是在CocoaPodsTest目錄下亥鸠,運行如下命令妆够。

pod install

(4)如果再添加其他的? 就 執(zhí)行pod update


**************************************************************************************************

問題描述:使用cocoapods時,import 找不到頭文件。

問題原因:這是因為還沒設(shè)置頭文件的目錄责静。

解決辦法:在項目的Target的里設(shè)置一下袁滥,添加cocoapods頭文件目錄:目錄路徑直接寫:${SRCROOT} ? ,后邊選擇recursive 灾螃。就可以了题翻。

注意:是在 User Header Search Paths 里添加,不是上面的 Header Search Paths.

設(shè)置方法
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末腰鬼,一起剝皮案震驚了整個濱河市嵌赠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌熄赡,老刑警劉巖姜挺,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異彼硫,居然都是意外死亡炊豪,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進店門拧篮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來词渤,“玉大人,你說我怎么就攤上這事串绩∪迸埃” “怎么了?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵礁凡,是天一觀的道長高氮。 經(jīng)常有香客問我,道長顷牌,這世上最難降的妖魔是什么剪芍? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮窟蓝,結(jié)果婚禮上紊浩,老公的妹妹穿的比我還像新娘。我一直安慰自己疗锐,他們只是感情好坊谁,可當我...
    茶點故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著滑臊,像睡著了一般口芍。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上雇卷,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天鬓椭,我揣著相機與錄音颠猴,去河邊找鬼。 笑死小染,一個胖子當著我的面吹牛翘瓮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播裤翩,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼资盅,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了踊赠?” 一聲冷哼從身側(cè)響起呵扛,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎筐带,沒想到半個月后今穿,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡伦籍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年蓝晒,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片帖鸦。...
    茶點故事閱讀 40,090評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡芝薇,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出富蓄,到底是詐尸還是另有隱情,我是刑警寧澤慢逾,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布立倍,位于F島的核電站,受9級特大地震影響侣滩,放射性物質(zhì)發(fā)生泄漏口注。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一君珠、第九天 我趴在偏房一處隱蔽的房頂上張望寝志。 院中可真熱鬧,春花似錦策添、人聲如沸材部。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽乐导。三九已至,卻和暖如春浸颓,著一層夾襖步出監(jiān)牢的瞬間物臂,已是汗流浹背旺拉。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留棵磷,地道東北人蛾狗。 一個月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像仪媒,于是被迫代替她去往敵國和親沉桌。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,033評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 一. CocoaPods的介紹 什么是CocoaPods规丽?CocoaPods是一個負責管理iOS項目中第三方開源庫...
    輝712閱讀 3,930評論 0 7
  • 前言 前幾天發(fā)布我的開源庫<最簡單方便的iOS輪播開源庫:JYCarousel>到CocoaPods的時候蒲牧。對Co...
    Dely閱讀 17,199評論 12 82
  • 什么是CocoaPods CocoaPods是開發(fā) OS X 和 iOS 應(yīng)用程序的一個第三方庫的依賴管理工具,而...
    木菀閱讀 835評論 0 5
  • CocoaPods 是什么赌莺? CocoaPods 是一個負責管理 iOS 項目中第三方開源庫的工具冰抢。CocoaPo...
    朝洋閱讀 25,683評論 3 51
  • 2017年6月13日,晴有風艘狭,涼爽 一個人呱呱墜地挎扰,好奇的睜眼第一次看到花花綠綠的世界,邁出人生...
    cf302fb8f796閱讀 243評論 0 0