亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

CocoaPods詳解之----使用篇

2019-11-07 23:30:33
字體:
來源:轉載
供稿:網友

一、什么是CocoaPods

1、為什么需要CocoaPods

在進行iOS開發的時候,總免不了使用第三方的開源庫,比如SBJson、AFNetworking、Reachability等等。使用這些庫的時候通常需要:

下載開源庫的源代碼并引入工程向工程中添加開源庫使用到的framework解決開源庫和開源庫以及開源庫和工程之間的依賴關系、檢查重復添加的framework等問題如果開源庫有更新的時候,還需要將工程中使用的開源庫刪除,重新執行前面的三個步驟,頓時頭都大了。。。

自從有了CocoaPods以后,這些繁雜的工作就不再需要我們親力親為了,只需要我們做好少量的配置工作,CocoaPods會為我們做好一切!

2、什么是CocoaPods

CocoaPods是一個用來幫助我們管理第三方依賴庫的工具。它可以解決庫與庫之間的依賴關系,下載庫的源代碼,同時通過創建一個Xcode的workspace來將這些第三方庫和我們的工程連接起來,供我們開發使用。

使用CocoaPods的目的是讓我們能自動化的、集中的、直觀的管理第三方開源庫。

二、安裝CocoaPods

1、安裝

CocoaPods是用Ruby實現的,要想使用它首先需要有Ruby的環境。幸運的是OS X系統默認的已經可以運行Ruby了,因此我們只需要執行以下命令:

[objc] view plain copy 在CODE上查看代碼片$ sudo gem install cocoapods  CocoaPods是以Ruby%20gem包的形式被安裝的。在安裝執行的過程中,可能會問我們是不是更新rake,輸入y即可。這是因為rake%20gem包會在安裝的過程中檢查更細,如果有可用的新版本就會出現剛才的選項。

在安裝進程結束的時候,執行命令:

[objc] view%20plain copy $ pod setup  如果沒有報錯,就說明一切安裝就成功了!

2、安裝過程中可能遇到的問題①執行完install命令半天沒反應這有可能是因為Ruby的默認源使用的是cocoapods.org,國內訪問這個網址有時候會有問題,網上的一種解決方案是將遠替換成淘寶的,替換方式如下:

[objc] view%20plain copy $ gem sources --remove https://rubygems.org/  //等有反應之后再敲入以下命令  $ gem sources -a http://ruby.taobao.org/  要想驗證是否替換成功了,可以執行:[objc] view%20plain copy $ gem sources -l  正常的輸出是:[objc] view%20plain copy *** CURRENT SOURCES ***    http://ruby.taobao.org/  

update:淘寶的%20ruby%20源已經不維護了,請替換成%20Ruby%20China,詳情請見:https://gems.ruby-china.org/

②gem版本過老

gem是管理Ruby庫和程序的標準包,如果它的版本過低也可能導致安裝失敗,解決方案自然是升級gem,執行下述命令即可:

[objc] view%20plain copy $ sudo gem update --system  

③安裝完成后,執行pod%20setup命令時報錯:[objc] view%20plain copy /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>'  這就是路徑設置的問題,可以通過執行:[objc] view%20plain copy $ rvm use ruby-1.9.3-p448  解決該問題。

3、升級CocoaPods升級很簡單,再次執行安裝命令即可:

[objc] view%20plain copy $ sudo gem install cocoapods  需要注意的是,如果安裝的時候使用了sudo,升級的時候一樣需要使用該關鍵字,不然升級完了以后又會出現路徑不匹配問題。

三、使用CocoaPods如果之前做的一切順利,接下來就可以體驗體驗CocoaPods的神奇之處了,需要經過以下幾步:

為了演示這個過程,我創建了一個名為CocoaPodsTest的工程。

1、創建PodfileCocoaPods的一切都是從一個名為Podfile的文件開始的,我們需要先創建這個文件。個人習慣使用命令行,我會這樣做:

[objc] view%20plain copy $ cd /Users/wangzz/Desktop/CocoaPodsTest  $ touch Podfile  首先進入到工程的根目錄下,創建空白的Podfile文件,創建完畢的目錄結構如下圖:

(PS:Podfile文件也可以不放在工程的根目錄下,只是會稍微麻煩點,在下一篇文章中會有介紹,敬請關注。)

2、編輯Podfile

根據需要,我們可以在Podfile文件中寫入需要用到的第三方庫,以SBJson、AFNetworking、Reachability三個庫為例,我的Podfile內容如下:

[objc] view plain copy 在CODE上查看代碼片platform :ios  pod 'Reachability',  '~> 3.0.0'  pod 'SBJson', '~> 4.0.0'    platform :ios, '7.0'  pod 'AFNetworking', '~> 2.0'  

3、執行導入命令

準備工作都完成后,開始導入第三方庫:

[objc] view%20plain copy $ cd /Users/wangzz/Desktop/CocoaPodsTest  $ pod install  首先進入工程根目錄,然后執行pod%20install命令,CocoaPods就開始為我們做下載Analyzing dependencies  Downloading dependencies  Installing AFNetworking (2.1.0)  Installing JSONKit (1.5

可以看到,工程的根目錄下多了三個東西:CocoaPodsTest.xcworkspace、Podfile.lock文件和Pods目錄。

(PS:篇幅有限,Podfile.lock文件會放到系列文章的下一篇介紹,敬請關注。)

再看看剛才執行完pod install命令打印出來的內容的最后一行:

[objc] view plain copy 在CODE上查看代碼片[!] From now on use `CocoaPodsTest.xcworkspace`.  提示我們從現在起,我們需要使用CocoaPodsTest.xcworkspace文件來開發。

對于工程發生的變化,有幾點需要說明:

第三方庫會被編譯成靜態庫供我們正真的工程使用

CocoaPods會將所有的第三方庫以target的方式組成一個名為Pods的工程,該工程就放在剛才新生成的Pods目錄下。整個第三方庫工程會生成一個名稱為libPods.a的靜態庫提供給我們自己的CocoaPodsTest工程使用。

我們的工程和第三方庫所在的工程會由一個新生成的workspace管理

為了方便我們直觀的管理工程和第三方庫,CocoaPodsTest工程和Pods工程會被以workspace的形式組織和管理,也就是我們剛才看到的CocoaPodsTest.xcworkspace文件。

原來的工程設置已經被更改了,這時候我們直接打開原來的工程文件去編譯就會報錯,只能使用新生成的workspace來進行項目管理。

打開CocoaPodsTest.xcworkspace,界面如下:

工程的目錄結構還是非常明顯的。

在項目中引用剛才添加的第三方庫的頭文件,執行編譯操作,果斷成功!

至此,CocoaPods使用篇告一段落,接下來打算再用一個篇幅介紹CocoaPods稍微深層次的東西,敬請關注。

四、參考資料

1、http://code4app.com/article/cocoapods-install-usage

2、http://cocoapods.org/


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品直播网红| 欧美日本国产在线| 亚洲综合小说区| 亚洲人成77777在线观看网| 亚洲欧美国产精品| 国产成人+综合亚洲+天堂| 久久精品亚洲94久久精品| 欧美丰满老妇厨房牲生活| 日韩免费看的电影电视剧大全| 欧美激情中文字幕乱码免费| 日韩av网站在线| 国模精品视频一区二区三区| 国产精品精品一区二区三区午夜版| 午夜精品理论片| 在线观看日韩av| 欧美激情aaaa| 欧美精品制服第一页| 久久久免费精品| 一区二区欧美亚洲| 91亚洲午夜在线| 亚洲午夜性刺激影院| 91精品国产91久久久久久最新| 成人性生交大片免费看小说| 国产精品网站视频| 久久伊人精品一区二区三区| 久久精品99久久香蕉国产色戒| 日韩大片免费观看视频播放| 欧美成人精品在线视频| 久久亚洲国产精品| 国产精品视频yy9099| 日韩欧美在线一区| 国产噜噜噜噜久久久久久久久| 国产成人激情视频| 国产一区二区三区免费视频| 精品中文字幕在线2019| 98午夜经典影视| 国产精品久久久久久搜索| 日韩中文字幕第一页| 一本色道久久综合狠狠躁篇怎么玩| 亚洲福利在线观看| 国产亚洲综合久久| 亚洲欧美一区二区三区情侣bbw| 久久电影一区二区| 亚洲天堂一区二区三区| 国产精品视频一区二区三区四| 国产一区在线播放| 亚洲国产古装精品网站| 日韩小视频网址| 精品久久香蕉国产线看观看gif| 51精品国产黑色丝袜高跟鞋| 色老头一区二区三区| 激情久久av一区av二区av三区| 庆余年2免费日韩剧观看大牛| 欧美电影免费在线观看| 成人黄色在线免费| 欧美性xxxx极品hd满灌| 精品视频中文字幕| 日本一欧美一欧美一亚洲视频| 国产情人节一区| 欧美国产中文字幕| 国产精品欧美亚洲777777| 韩国三级日本三级少妇99| 欧美天堂在线观看| 九九久久久久久久久激情| 欧美性猛交xxxx富婆弯腰| 中文亚洲视频在线| 黄色一区二区三区| 欧美资源在线观看| 欧美一级bbbbb性bbbb喷潮片| xvideos成人免费中文版| 欧美专区日韩视频| 欧美韩国理论所午夜片917电影| 国产精品永久免费观看| 欧美wwwwww| 国产欧美最新羞羞视频在线观看| 亚洲国产私拍精品国模在线观看| 国产91精品黑色丝袜高跟鞋| 欧美国产极速在线| 久久精品美女视频网站| 亚洲精品美女在线| 国产69精品久久久久9999| 欧美黑人一区二区三区| 亚洲欧洲日产国产网站| 国产精品久久久久久av福利| 欧美人与性动交a欧美精品| 97视频在线观看亚洲| 久久香蕉国产线看观看av| 亚洲福利视频二区| 亚洲情综合五月天| 久久精品国产久精国产一老狼| 国产精品丝袜白浆摸在线| 夜夜躁日日躁狠狠久久88av| 久久久久久国产精品三级玉女聊斋| 最近2019年日本中文免费字幕| 精品久久久久久久久久ntr影视| 91成人天堂久久成人| 狠狠色狠狠色综合日日小说| 91久久国产婷婷一区二区| 日韩福利伦理影院免费| 久久久久久久网站| 国产999在线观看| 亚洲免费视频在线观看| 亚洲精品www久久久| 久久99精品久久久久久琪琪| 成人网页在线免费观看| 欧美激情视频三区| 成人激情av在线| 国产成人91久久精品| 国产精品第一页在线| 欧美一区二区三区免费视| 国产精品久久久999| 欧美一级免费看| 国产精品网站大全| 俺也去精品视频在线观看| 色噜噜狠狠色综合网图区| 亚洲欧美精品在线| 国产精品久久久久影院日本| 69久久夜色精品国产69乱青草| 欧美激情一级精品国产| 久久九九亚洲综合| 久久九九有精品国产23| 亚洲一区中文字幕在线观看| 精品少妇v888av| 97视频在线播放| 国产精自产拍久久久久久蜜| 国产成人欧美在线观看| 日韩av电影手机在线观看| 中文字幕欧美日韩精品| 性日韩欧美在线视频| 欧美亚洲在线播放| 午夜精品久久久久久99热| 浅井舞香一区二区| 福利一区福利二区微拍刺激| 92福利视频午夜1000合集在线观看| 午夜精品久久久久久久久久久久久| 2020久久国产精品| 国产精品久久久久久久久久久久久久| 亚洲男人天天操| 91精品国产成人www| 91精品国产91久久久久久不卡| 国产精品羞羞答答| 高清欧美性猛交xxxx| 成人av色在线观看| 国产精品久久久久久av| 亚洲大胆人体在线| 亚洲一级黄色片| 亚洲国产精品va在线观看黑人| 久久久女女女女999久久| 国产成人亚洲综合91精品| 国产亚洲视频在线| 日韩在线视频二区| 丝袜亚洲欧美日韩综合| 久久在线精品视频| 亚洲黄色有码视频| 亚洲已满18点击进入在线看片| 久久久久国产精品一区| 日韩一二三在线视频播| 91精品国产高清| 在线观看欧美视频| 欧美日韩亚洲激情| 欧美黑人巨大精品一区二区| 国产69精品久久久久久| 亚洲影院色在线观看免费| 国产精品pans私拍|