iOS開發-AFNetWorking 3.0在CocoaPods上的坑
AFNetWorking在10月份的時候釋出了3.0測試版,在十二月份11號到十19號連續釋出了3.0.0到3.0.4五個正式版本,不可謂不速度。本著學習的心態在測試專案中匯入AFNetWorking,Podfile中命令如下:source 'https://github.com/CocoaPods/Specs.git' platform :ios, '8.0' pod 'AFNetworking', '~> 3.0'
預想的結果是喝口水,接下來開始擼程式碼的結果,事與願違,報錯了,結果如下:
<pre><code>[!] Unable to satisfy the following requirements:
- AFNetworking (~> 3.0)
required by
Podfile`</code></pre>
如果你遇到過這個問題或者你知道這個問題的解決方案,那麼你可以去喝口水忽略我,頭一次遇到pod安裝專案出問題的,一頭霧水,踩了坑就要慢慢的爬起來。以下內容算是解決問題的一個思考過程,與大家共勉。
降低版本
如果AFNetWorkinga版本太高,那麼就降版本,設定為2.6.0,稍等一會就安裝成功,這個時候反而有點茫然了,為什麼2.6.0可以,3.0不可以?難道3.0比較特殊?
AFNetWorking3.0安裝要求
CocoaPods 0.39.0+ is required to build AFNetworking 3.0.0+.
Xcode 7+ is required.
通過pod --version
檢視之後版本確實是0.39.0,同樣的很不理解,在網上搜尋一遍無果,這個時候就在想是不是AFNetWorking更新太快,沒有在CocoaPods上釋出,事實證明我是錯的,但是確想到了一個命令~
版本檢視
通過CocoaPods上的AFNetWorking,最新版本截圖如下:
通過剛才想到的
pod search AFNetWorking
搜尋一下很意外,發現最高的版本是2.6.0,簡單點說就是本地的第三庫的資料和遠端的資料不同步,導致CocoaPods本地的版本庫低於遠端這裡面其實存在一個問題,先來解決版本不同步的問題
升級CocoaPods本地庫
升級基本上算是重走了CocoaPods安裝的路子,如果已經預設的是淘寶的ruby源,直接進行1,5,6即可:$ sudo gem update --system // 先更新gem $ gem sources --remove https://rubygems.org/ $ gem sources -a https://ruby.taobao.org/ $ gem sources -l //檢視ruby地址 $ sudo gem install cocoapods // 安裝cocoapods $ pod setup
這裡面需要注意的一個問題是最後一步pod setup
,這一步會稍微有點慢:
Creates a directory at ~/.cocoapods/repos
which will hold your spec-repos. This is where it will create a clone of the public master
spec-repo from:
https://github.com/CocoaPods/Specs
If the clone already exists, it will ensure that it is up-to-date.
更新完成之後:
Search的範圍
通過pod search我們可以檢視到第三方庫的版本,本地的第三方庫和網上不同步,搜尋的結果為什麼只是在本地,而不是查詢網上的結果,那就驗證search是不是隻查詢本地在.cocoapods下的路徑截圖:
如果我們刪除紅色標註的三個版本會不是查不到這三個版本?
興趣探討
上圖中刪除了AFNetWorking的是三個測試版本,無法查出來,當然也無法更新,也就是你新增的版本本地應該是存在的,不然無法更新.
我們開發中經常會因為慢,只下載程式碼,不更新本地依賴庫,其實是一個不太好的習慣,有可能就造成本地版本庫的第三方版本低CocoaPods服務端的版本:pod install xx --verbose --no-repo-update
如果我們刪除了AFNetWorking,會怎麼樣呢?
一切都需要從頭再來,你需要先uninstall存在的CocoaPods,然後重複升級版本庫的的步驟,我刪除試了一下,重新開始的感覺不是那麼美妙~
問題探討完了,該睡覺了,看文章也可以早點休息了~
相關文章
- iOS 開發筆記 - 登入 註冊 (網上較少的 AFNetworking 3.0)iOS筆記
- iOS開發之AFNetWorking初次使用會報錯的坑iOS
- 玩轉iOS開發《建立CocoaPods開發庫》iOS
- iOS開發的那些坑iOS
- iOS開發的那些坑(貳)iOS
- EJB 3.0 在 WAS V7 上開發部署的最佳實踐
- ios開發分析:CocoaPods私有庫建立與使用iOS
- iOS開發: 配置CocoaPods遠端私有倉庫iOS
- 更新cocoapods 遇到的坑
- AFNetworking 3.0遷移指南
- iOS開發 Mac升級10.13.1 cocoapods 不能使用iOSMac
- iOS開發中利用AFNetworking進行斷點下載iOS斷點
- 在 Windows 上搭建 React Native IOS 開發環境WindowsReact NativeiOS開發環境
- 在iOS上將Chrome開源!iOSChrome
- Cocoapods 版本升級遇到的坑
- iOS開發: CocoaPods遠端私有倉庫的維護-新增子庫iOS
- 那些年一起用過的iOS開發利器之CocoaPodsiOS
- iOS開發 GCD訊號量實現AFNetworking的順序請求iOSGC
- iOS開發 - touchBegan事件判斷點選的位置在View上還是在View的子View上iOS事件斷點View
- iOS開發中遇到的那些坑,持續更新iOS
- iOS CocoaPods使用iOS
- Swift iOS : CocoaPodsSwiftiOS
- CocoaPods的安裝以及遇到的坑
- Android與iOS開發統一坑AndroidiOS
- AFNetworking3.0 HTTPS請求HTTP
- iOS開發: CocoaPods遠端私有倉庫的維護-新增依賴庫iOS
- CocoaPods報錯:The dependency `AFNetworking ` is not used in any concrete target
- iOS開發·網路請求大總結(NSURLConnection,NSURLSession,AFNetworking)iOSSession
- 短視訊商城在ios短視訊開發上的應用效果iOS
- iOS開發之UIRefreshControl使用踩坑iOSUI
- iOS CocoaPods公有庫iOS
- iOS CocoaPods私有庫iOS
- iOS 玩轉CocoaPodsiOS
- iOS開發: CocoaPods遠端私有倉庫的維護-新增圖片資源iOS
- Swift3.0 - 遇到的坑Swift
- iOS專案開發實戰——使用AFNetworking進行Http Get請求iOSHTTP
- iOS 最新版 CocoaPods 的安裝流程 iOS 最新版 CocoaPods 的安裝流程iOS
- iOS上開發的一個安全鍵盤iOS