多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > iOS開發~CocoaPods使用詳細說明

iOS開發~CocoaPods使用詳細說明

來源:程序員人生   發布時間:2016-08-26 09:04:21 閱讀次數:3622次

1、概要

iOS開發時,項目中會援用許多第3方庫,CocoaPods(https://github.com/CocoaPods/CocoaPods)可以用來方便的統1管理這些第3方庫(從1個坑出來,又進了另外一個坑而已……)。


2、安裝

由于網上的教程基本都大同小異,但細節的地方還不是很完善,所以借機會在這里補充下:

注:要使用CocoaPods,那就要下載安裝它,而下載安裝CocoaPods需要Ruby環境


1、Ruby環境搭建

當前安裝環境為Mac mini 10.8.5。Mac  OS本身自帶Ruby,但還是更新1下保險,由于我第1次安裝在沒有更新Ruby的情況下就失敗了。

a 查看下當前ruby版本:打開終端輸入 ruby -v(確切安裝了,不過用這個版本接下來工作失敗了,所以更新下ruby)

[objc] view plain copy
 print?在CODE上查看代碼片派生到我的代碼片
  1. ritekiMac-mini:PodTest lucky$ ruby -v  
  2. ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]  
  3. ritekiMac-mini:PodTest lucky$   

b 更新ruby

終端輸入以下命令(把Ruby鏡像指向taobao,避免被墻,你曉得

gem sources --remove https://rubygems.org/ 
gem sources -a http://ruby.taobao.org/ 
gem sources -l  (用來檢查使用替換鏡像位置成功)

[objc] view plain copy
 print?在CODE上查看代碼片派生到我的代碼片
  1. ritekiMac-mini:~ lucky$ gem sources --remove https://rubygems.org/  
  2. https://rubygems.org/ removed from sources  
  3. ritekiMac-mini:~ lucky$ gem sources -a http://ruby.taobao.org/  
  4. http://ruby.taobao.org/ added to sources  
  5. ritekiMac-mini:~ lucky$ gem sources -l  
  6. *** CURRENT SOURCES ***  

補充:(2016-01⑵0更新

淘寶已關閉HTTP協議的景象服務,改成HTTPS協議。

淘寶ruby地址:https://ruby.taobao.org/

2、下載安裝CocoaPods

終端輸入:sudo gem install cocoapods 


[html] view plain copy
 print?在CODE上查看代碼片派生到我的代碼片
  1. ritekiMac-mini:~ lucky$ sudo gem install cocoapods  
  2.   
  3. CHANGELOG:  
  4.   
  5. ## 0.32.1  
  6.   
  7. ##### Bug Fixes  
  8.   
  9. * Fixed the Podfile `default_subspec` attribute in nested subspecs.    
  10.   [Fabio Pelosin][irrationalfab]  
  11.  \ [#2050](https://github.com/CocoaPods/CocoaPods/issues/2050)  
  12.   
  13.   
  14. Successfully installed cocoapods-0.32.1  
  15. Installing ri documentation for cocoapods-0.32.1  
  16. /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:280: warning: conflicting chdir during another chdir block  
  17. /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:287: warning: conflicting chdir during another chdir block  
  18. Done installing documentation for cocoapods after 10 seconds  
  19. 1 gem installed  


這樣就下載安裝好了CocoaPods


3、使用CocoaPods

a  新建1個項目,名字PodTest



b  終端中,cd到項目總目錄(注意:包括PodTest文件夾、PodTest.xcodeproj、PodTestTest的那個總目錄)

[objc] view plain copy
 print?在CODE上查看代碼片派生到我的代碼片
  1. cd /Users/lucky/Desktop/PodTest   

c  建立Podfile(配置文件)

接著上1步,終端輸入 vim Podfile



鍵盤輸入 i,進入編輯模式,輸入

platform :ios, '7.0' 
pod 'MBProgressHUD', '~> 0.8'


然后按Esc,并且輸入“ :”號進入vim命令模式,然后在冒號后邊輸入wq



注意:鍵盤輸入 :后,才能輸入wq。回車后發現PodTest項目總目錄中多1個Podfile文件



激動人心的時刻到了:肯定終端cd到項目總目錄,然后輸入 pod install,等待1會,大約3分鐘。



查看項目根目錄:



注意:現在打開項目不是點擊 PodTest.xodeproj了,而是點擊 PodTest.xcworkspace

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

a、第3方庫會以成靜態庫方式引入工程使用

CocoaPods會將所有的第3方庫以target的方式組成1個名為Pods的工程,該工程就放在剛才新生成的Pods目錄下。全部第3方庫工程會生成1個名稱為libPods.a的靜態庫提供給工程使用。

b、xcworkspace(PodTest.xcworkspace)的作用是管理工程和第3方庫

PodTest工程和Pods工程被以workspace的情勢組織和管理。


打開項目后看到項目結構并且測試1下:



運行結果:



補充:

1、CocoaPods的基本安裝及使用都詳細的說明了,但還有1些補充,當需要同時導入多個第3方時候怎樣辦 ?

這就需要修改Podfile了,就是用vim編輯的那個保存在項目根目錄中的文件,修改完了Podfile文件,需要重新履行1次pod install命令。

例如:

platform :ios

pod 'JSONKit',       '~> 1.4'

pod 'AFNetworking',  '~> 2.0'


2、CocoaPods可以查找你想要的第3方庫

終端輸入命令:pod search UI

瘋了了,我怎樣查找這么大眾的關鍵字,好多庫~~


然后重新編輯Podfile文件,依照之前的步驟,把更多的庫都導入項目!

3、上文中“建立Podfile(配置文件)接著上1步,終端輸入 vim Podfile”步驟,如果不習慣使用vim編輯器,也能夠使用linux命令touch,生成1個空的Podfile文件,然后使用其他的文本編輯器都可以,例如:

[objc] view plain copy
 print?在CODE上查看代碼片派生到我的代碼片
  1. lizhongfudeMacBook-Pro:~ lizhongfu$ cd /Users/lizhongfu/Desktop/TestProject   
  2. lizhongfudeMacBook-Pro:TestProject lizhongfu$ touch Podfile  
編輯好Podfile文件后,就能夠履行pod install第3方導入了(詳見:補充第1條),CocoaPods就開始為我們做下載源碼、配置依賴關系、引入需要的framework等1些列工作。

4、如果已生成了CocoaPods管理的工程,則可以在Xcode中編輯Podfile,編輯保存后,別忘記cd到根目錄,調用pod install命令

5、項目存在多個Target的時候,需要配置Podfile文件來支持新增加的Target,否則只支持項目默許建立時生成的Target:

a、如果新建1個Target,命名為Second,并且Second與Test兩個Target所需要的第3方支持相同,也就是使用相同的Pods依賴庫,則可使用

link_with關鍵字:

[objc] view plain copy
 print?在CODE上查看代碼片派生到我的代碼片
  1. link_with 'Test''Second'  
  2. platform :ios  
  3. platform :ios, ‘9.0’    
  4. pod 'AFNetworking''~> 2.0'  

b、如果不同的Target需要不同的依賴庫,則可以

[objc] view plain copy
 print?在CODE上查看代碼片派生到我的代碼片
  1. platform :ios  
  2. target :'Test' do  
  3. pod 'Reachability'  
  4. pod 'SBJson'     
  5. pod 'AFNetworking'   
  6. end    
  7.     
  8. target :'Second' do  
  9. pod 'OpenUDID'   
  10. end  


6、出現/Library/Ruby/Gems/2.0.0/gems/claide-0.8.1/lib/claide/command.rb:417:in `help!': [!] You cannot run CocoaPods as root. (CLAide::Help)

重新打開1個終端,然后pod install,不要sudo pod install。

7、如果$ pod install時候遇到:

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生

------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 校园春色自拍偷拍 | 亚洲欧美韩国日本 | 噜噜噜噜噜在线观看视频 | a4yy私人毛片在线 | 日本18网站| 伊人久久大香网 | 成年人视频免费网站 | 国产福利在线免费观看 | 欧美日韩天堂 | 日本不卡高清中文字幕免费 | 2022国内精品免费福利视频 | 91精品欧美综合在线观看 | 韩日一区二区三区 | 欧美日韩a级a| 精品不卡一区中文字幕 | 色综合免费视频 | 亚洲免费大片 | 牛和人交videos欧美冫3d | 亚洲午夜久久久精品影院视色 | 狠狠躁天天躁夜夜躁婷婷 | www免费看| 亚洲日本1区2区3区二区 | 久草不卡 | 日本中文字幕在线视频 | 日本一区二区视频在线观看 | 欧美一级黄色片视频 | 国产毛片精品 | 亚洲国产天堂久久九九九 | 青青草原在线视频 | 国产经典自拍 | 久久亚洲国产精品一区二区 | 成人午夜精品网站在线观看 | 亚洲国产精品成人综合久久久 | 欧美日本一区二区三区道 | 大杳焦伊人久久综合热 | xx免费视频 | 欧美同性video| 国产午夜视频在线观看第四页 | 精品国产乱码久久久久久一区二区 | 欧美一级永久免费毛片在线 | 欧美一区二区三区免费播放 |