現(xiàn)在,快速開發(fā)APP已經(jīng)成為所有公司的需求屋讶,公司會在業(yè)務(wù)方法投入更多的時(shí)間來豐富APP的內(nèi)容地梨,而功能實(shí)現(xiàn)這個(gè)重?fù)?dān)就壓到了開發(fā)者的肩上蛇券。這時(shí)如果我們?nèi)绻總€(gè)細(xì)節(jié)都自己傻楞的實(shí)現(xiàn)那結(jié)果可能只有兩個(gè):加班或者加班也做不完,然后被批猪杭。
大家一定聽說過“不要重復(fù)造輪子”這句話餐塘,我們可以在程序適當(dāng)?shù)牡胤揭胍恍┬阅軆?yōu)良的第三方庫(輪子)來幫我實(shí)現(xiàn)某些復(fù)雜或者繁瑣的過程筐付。這樣我們就可以專心的“造車”了洋只。
CocoaPods 簡介
CocoaPods 是一個(gè)為Swift何Objective-C提供依賴項(xiàng)管理的工具,它擁有近2.6萬個(gè)輪子可以為你的程序提供方便苍糠,有超過150萬個(gè)程序通過它來管理依賴項(xiàng)涮较。利用CocoaPods可以優(yōu)雅的幫助你擴(kuò)展你的項(xiàng)目稠鼻。CocoaPods主頁
安裝CocoaPods
首先確保本機(jī)的 gem 工具可以使用,檢測方法:打開終端輸入
gem -v
如果報(bào)錯(cuò):-bash: gem: command not found
這種的狂票,說明ruby的環(huán)境出現(xiàn)問題候齿,給大家推薦一篇文章安裝ruby運(yùn)行環(huán)境-
更換ruby的軟件源(國內(nèi)網(wǎng)絡(luò)問題導(dǎo)致)。方法:在終端輸入:
gem sources -l
查看當(dāng)前ruby的源
gem sources --remove https://rubygems.org/
移除當(dāng)前ruby的源
gem sources -a https://ruby.taobao.org/
設(shè)置ruby的新源
gem sources -l
再次查看當(dāng)前ruby的源
下面結(jié)果就證明ruby的軟件源已經(jīng)設(shè)置OK了闺属。*** CURRENT SOURCES *** https://ruby.taobao.org/
更新gem 方法:在終端輸入:
sudo gem update --system
需要升級時(shí)在升級成功后會提示: Latest version currently installed. Aborting.以上過程成功后慌盯,就可以開始安裝CocoaPods了,方法:在終端輸入:
sudo gem install cocoapods
這個(gè)過程有時(shí)會比較慢掂器,需要等待亚皂。
如果出現(xiàn)了錯(cuò)誤(在系統(tǒng)版本大于10.11時(shí)會出現(xiàn)) [zsh: command not found: pod] ,這時(shí)候我們繼續(xù)執(zhí)行:
sudo gem install -n /usr/local/bin cocoapods
初始化CocoaPods
pod setup
當(dāng)出現(xiàn)如上錯(cuò)誤時(shí),執(zhí)行:
pod repo update --verbose
以上的過程成功之后国瓮,安裝就結(jié)束了灭必。
使用CocoaPods
-
Podfile 的編寫。使用CocoaPods的第一步乃摹,就是為你的程序定制一份量身的腳本禁漓,CocoaPods會根據(jù)你寫的腳本來生成對應(yīng)的依賴。
下面是個(gè)簡單的例子:
102.png
第一個(gè)紅框:platform :ios 和第二個(gè)紅框 '6.0' 這行腳本的意思是指定依賴項(xiàng)的平臺是iOS平臺孵睬,最低支持的版本是 iOS 6.0. 當(dāng)然這里可以根據(jù)不同的平臺和最低支持的版本不同而修改播歼,比如我的程序是 為watchOS 2.0寫的, platform :watchos, '2.0'
第三個(gè)紅框 target 'DoIt' do 這行腳本的意思是:為程序中的 DoIt 這個(gè)target添加依賴項(xiàng)掰读,以end結(jié)尾
第四個(gè)紅框 pod 'CocoaLumberjack', '~> 2.4.0' 就是真正的依賴項(xiàng)了秘狞, 它寫到這里意思是: 為 'DoIt' 添加 CocoaLumberjack這個(gè)第三方庫叭莫,而且版本 在 2.4.0 - 2.5.0之間,且不包含2.5.0烁试。
‘~>’這個(gè)符號的意思就是不大于這個(gè)小版本的意思雇初。同樣,還有 = , > , >= , < , <= 這5種符合廓潜,意思同符號抵皱。
如果想查找一些依賴項(xiàng),并查看它有什么可用版本的時(shí)候辩蛋,可以利用pod提供的檢索功能:
pod search CocoaLumberjack
103.png
如果為不同的target寫不同的依賴項(xiàng)呻畸,就要按圖中的方式分開寫。其他更多的Podfile腳本寫法見官方的文檔 Podfile Syntax Reference
為你的程序添加依賴悼院。進(jìn)行如下操作伤为。將第一步生成的Podfile文件放到你的程序目錄下,于 xxxx.xcodeproj 同級据途,打開控制臺绞愚,cd 到 Podfile文件路徑下,然后執(zhí)行
pod install
如果你寫的Podfile腳本文件沒問題的話颖医,這步執(zhí)行成功后會生成一個(gè) xxxx.xcworkspace 文件位衩,那么恭喜你依賴項(xiàng)已經(jīng)添加成功了。如果未成功的話熔萧,腳本中有問題的地方會在控制臺打印出來糖驴,修改之后,重復(fù)此步驟直到顯示成功為止佛致。更新依賴項(xiàng)贮缕。一旦install執(zhí)行成功后,之后對Podfile文件修改后俺榆,直接執(zhí)行:
pod update
就行了感昼。打開xxxx.xcworkspace 文件,這里以后就是你開發(fā)的地方了罐脊。
CocoaPods需要被某個(gè)Target下的子工程依賴時(shí)
這種情況一般多在Frameworks或者靜態(tài)庫開發(fā)時(shí)定嗓。子工程并沒有被添加到依賴。這時(shí)候我們需要做幾個(gè)簡單的操作爹殊。
- 找到主工程(Podfile添加依賴的Target)下的 Pods 目錄蜕乡,復(fù)制一份你需要Target的 Pods-APP.debug.xcconfig 文件。
這時(shí),你會發(fā)現(xiàn)胞谈,引用不到的依賴項(xiàng)已經(jīng)可以使用了尘盼。