? ?cocoaPods是什么,為何要使用它以及原理網(wǎng)上有很多解釋,在這就不一一詳細(xì)說明了。 網(wǎng)上安裝的cocoapods的方法有很多種,本人試來試去花費(fèi)一天多時(shí)間才搞定,但整體上我感覺還是用我這一種比較快捷(個(gè)人想法)。
? ? ?在Mac自動(dòng)終端(Terminal)完成以下操作:
1、查看gem是否為最新版本
輸入命令:sudo gem update --system
執(zhí)行命令后如果顯示:Latest version currently installed. Aborting,說明當(dāng)前已經(jīng)是最新版本,無需再升級。如果顯示RubyGems system software updated,說明升級成功
2、設(shè)置ruby的軟件源
查看當(dāng)前ruby的源:
gem sources -l?
移除當(dāng)前ruby的源:
gem sources --remove https://rubygems.org/?
設(shè)置當(dāng)前ruby的源為:
gem sources -a https://ruby.taobao.org/ (或https://ruby.oschina.org/)
再次查看當(dāng)前ruby的源:
gem sources -l?
只有在終端中出現(xiàn)下面文字才表明你上面的命令是成功的:
*** CURRENT SOURCES ***
http://ruby.taobao.org/
3、安裝cocoapods(最耗時(shí)間的一步)
(這一步能幫你節(jié)省50%以上的安裝時(shí)間)
你可以去ruby官網(wǎng)到https://github.com/CocoaPods/Specs下載文件。(github所有的第三方開源庫的Podspec文件都托管在這里,這也是你pod setup所要下載的)?;虻骄W(wǎng)盤:http://pan.baidu.com/s/1i48EVHF 下載master文件。
不用按照網(wǎng)上說的 sudo gem install cocoapods 然后 pod setup 說明的浪費(fèi)時(shí)間
安裝上面的方法下載好master文件后,到mac桌面“前往”下“前往文件夾”點(diǎn)擊后輸入“~/.cocoapods/repos”尋找到這個(gè)文件夾,沒有完成安裝cocoapods的文件夾是空的把下載好的master文件拖進(jìn)去進(jìn)可以了,如果是更新最新的cocoapods會(huì)看到master文件替換最新的master文件;
4、完成第3步后檢查
搜索需要集成的庫,執(zhí)行命令:pod search 需要搜索的庫
如果能搜索到說明你已經(jīng)安裝成功了;
5、使用方法
<第一種使用方法>新建工程
并在終端用cd指令到該工程文件夾內(nèi)
在該工程路徑下創(chuàng)建一個(gè)Podfile文件
touch Podfile
?打開Podfile文件
vim Podfile
<第二種>已有的工程添加Podfile文件
cd “你已有的工程的文件路徑”
vim Podfile
6、把你想要的第三方庫放到里面 vim Podfile?
Xcode8 之后都是這樣輸入的:
platform:ios,’9.0’
use_frameworks!
target “你的工程名” do
pod "AFNetworking", "2.5.0"
end
完成上面的就可以“ESC”后加“:wq”保存退出;
==============================================
7、. 這時(shí)候,你就可以利用CocoPods下載AFNetworking類庫了。還是在終端中的當(dāng)前項(xiàng)目目錄下,運(yùn)行以下命令
pod install(完成這一步就可以去你的工程下查看了,以后打開工程就不能點(diǎn)擊
“toothBlue.xcodeproj”打開工程,點(diǎn)擊“toothBlue.xcworkspace”打開,它會(huì)加載第三方庫什么的基本就是完成了第三方庫的添加了)
pod install --verbose --no-repo-update? 不升級CocoaPods的spec倉庫
=========================================================
如果有一些包已經(jīng)存在了,或者我們更改了Podfile里面的版本,可以使用以下命令更新
pod update
pod update --verbose --no-repo-update
關(guān)于Podfile文件編輯時(shí),第三方庫版本號的各種寫法:
pod ‘AFNetworking’? ? //不顯式指定依賴庫版本,表示每次都獲取最新版本
pod ‘AFNetworking’, ‘2.0’? ? //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′? ? //使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0′? //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0′? ? //使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0′? //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′ //使用大于等于0.1.2但小于0.2的版本
pod ‘AFNetworking’, ‘~>0.1′? //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′? ? //高于0的版本,表示每次都使用最新版本
=========================================================
【以下是我用以前的安裝流程安裝時(shí)出現(xiàn)的一些錯(cuò)誤】
終端 ?cocoapods 下載bug調(diào)試:
錯(cuò)誤1:
Error fetching http://ruby.taobao.org/:
bad response Not Found 404 (http://ruby.taobao.org/specs.4.8.gz)
解決方案:把安裝流程中 $gem sources -a http://ruby.taobao.org/
---改為---->$gem sources -a https://ruby.taobao.org/
錯(cuò)誤2:
ERROR:? While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/pod
解決方案:蘋果系統(tǒng)升級OS X EL Capitan后會(huì)出現(xiàn)的插件錯(cuò)誤,將安裝流程 4.安裝CocoaPods 的 (1)sudo gem install cocoapods ——>改為sudo gem install -n /usr/local/bin cocoapods
錯(cuò)誤3:
[!] Unable to satisfy the following requirements: - `AVOSCloud (~> 3.1.6.3)` required by `Podfile`
Specs satisfying the `AVOSCloud (~> 3.1.6.3)` dependency were found, but they required a higher minimum deployment target.
解決方案:安裝流程:Podfile文件中 platform:ios,?'6.0'??后邊的 6.0 是平臺版本號 ,一定要加上
錯(cuò)誤4
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master
xcrun: error: active developer path ("/Applications/Xcode 2.app/Contents/Developer") does not exist, use `xcode-select —switch path/to/Xcode.app` to specify the Xcode that you wish to use for command line developer tools (or see `man xcode-select`)
解決辦法:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer