BG:新換了一個電腦,Xcode里面需要重新安裝CocoaPods工具,由于不經常弄這個,所以竟然忘記了具體的安裝流程,去百度了一下,運氣不好,弄了一下沒有成功,后來又看了一個文章才弄成功,這里決定寫一個文章說明下安裝使用流程,也是方便自己今后需要使用的時候方便查看,也希望可以幫助到其他人
一、關于CocoaPods
- 它是第三方框架管理工具
- 使用背景
- 開發iOS應用時,會經常使用到很多第三方框架,正常我們需要手動一個個去下載所需類庫然后拖拽到我們的項目中,而且項目中都會有很多的類庫,十分麻煩
- 當項目中用到的類庫有更新,你需要去重新下載新版本,然后加入到項目中,這顯然是麻煩的
- 這個時候我們會想,如果能有什么工具能解決安裝以及更新或者刪除這些坑爹的問題,那該多社會...
- 正是在這個情況下, CocoaPods應運而生,它能使用到OC與Swift項目中,Swift由于命名空間的原因更應該使用到它的,而且目前比較流行的框架都存在于CocoaPods服務器。所以如果項目中沒有使用到這個,那就out啦~
二、CocoaPods的安裝
- 在安裝CocoaPods之前,首先要確保你的電腦已經安裝好Ruby環境,默認Mac系統已經存在了這個環境,而且以下命令都是在終端下操作的
- 安裝的時候需要訪問cocoapods.org,由于是在天朝,天朝存在這樣那樣一面墻...所以我們為了快速安裝CocoaPods,建議大家都先升級Ruby環境
1)//用淘寶的RubyGems鏡像來代替官方版本
$ gem sources --remove https://rubygems.org/
2)//等有反應之后再敲入以下命令
$ gem sources -a https://ruby.taobao.org/
3)//為了驗證是否替換成功,可以用以下命令查看:
$ gem sources -l
只要在終端中出現下面文字就表明操作成功啦:
*** CURRENT SOURCES ***
http://ruby.taobao.org/
- 安裝CocoaPods
- 按照步驟粘貼復制即可
1)安裝CocoaPods
$sudo gem install cocoapods
備注:蘋果系統升級 OS X EL Capitan后改為 $sudo gem install -n /usr/local/bin cocoapods
*我自己測試2個都能使用,如果大家使用了第1個不行,換第2個即可
2)安裝之后初始化第三方庫信息
$pod setup
備注:初始化過程由于需要訪問國外服務器,如果時間久等不及可以更換repo鏡像為國內服務器
// 刪除之前的倉庫
$pod repo remove master
//更換新的倉庫源
$ pod repo add master http://gitcafe.com/akuandev/Specs.git
//更新成功后安裝
$pod setup
3)以后如果需要更新第三方庫信息不再需要pod setup只需要
$pod repo update
4)正常情況下完成以上步驟,Cocoapods就已經安裝成功了,可以搜索一下任意一個第三方庫驗證一下,出現下圖就是成功啦
$ pod search AFNetworking
安裝成功.png
使用CocoaPods
- 這里介紹2個使用方式,本人建議使用第2種哦,既然是傻瓜式使用,那么就要將傻瓜進行到底嘛
- 使用終端命令
1)新建工程,并在終端用cd指令進入到工程文件夾內
2)在終端先搜索你想要使用的框架,比如我想使用"AFNetworking"
$ pod search AFNetworking
只要出現和上面圖片一樣的內容就代表可以使用
3)新建文件 “Podfile”,(注意大小寫)
$vim Podfile
在Podfile文件寫入以下內容并保存(里面就是說明你需要使用到哪些框架,這些內容一般正常的話會在框架說明文檔顯示)
備注:(vim文件簡單操作, 按“ i” 可編輯 ,“esc” 退出編輯,“:wq” 保存退出)
platform :ios, '7.0' //平臺 :ios, 版本,這里是至少7.0以上
pod 'AFNetworking', '~> 2.3.1' //第三方框架 ,這里指定了三方框架的版本號,也可以不指定,不指定的話默認就是最新版本
//不指定版本號 pod 'AFNetworking'
4)操作完第二步之后,可以查看下剛剛寫的文件
cat Podfile
5)解析Podfile文件,安裝框架到項目中
$pod install
備注:后續如果給Podfile文件添加了新的三方框架,即使再次使用這個安裝命令,它也不會重復安裝,這個是非常智能的,只會安裝新的框架
6)打開當前文件夾可以查看到項目中多了新的文件
$open ./
7)后續開發中只需要打開工作空間的文件即可,不需要打開項目文件,工作空間文件里面會存放三方框架,而且框架代碼不在我們的項目中,項目不會被框架污染
Pods目錄.png
- 直接使用CocoaPods這個插件去管理我們的Podfile文件,沒錯,有一個Xcode插件就叫做 CocoaPods,它和我們的管理三方框架這個CocoaPods工具是同名的
- CocoaPods插件使用流程
- 首先就是安裝這個插件了,安裝之后按照我下面給出的流程圖片操作就可以了
- 需要說明的一點是創建完Podfile文件,在里面寫東西的時候里面默認是添加了關于項目名稱
以及和Swift相關的一些內容,這個時候如果我們是OC的項目,只需要把多余的內容刪除,繼續
留下和之前的方式一樣的內容就可以了
- 操作完畢系統會提示是否打開新的文件
注意:每次新添加了一個框架,需要重新進行一次 install Pods,下載完畢框架,工作臺會輸出相關內容
Pod installation complete! There are 3 dependencies from the Podfile and 3 total pods installed.
創建使用第一步.png
插件使用第二步.png
最后的建議
- 通過以上操作,大家可以正常的使用Cocoapods工具去管理第三方類庫了,由于現在xcode安裝插件,默認是需要破解的,所以啰嗦的給出大家一個破解流程
- 查詢Xcode當前版本號
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
- 前往文件夾:
~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
- 找到對應的插件,右鍵顯示包內容,找到它的info.plist 文件,在DVTPlugInCompatibilityUUIDs類目下將當前xcode版本號添加進去,重新運行Xcode,選擇Load Bundle即可
- 我個人使用 的是一個管理插件的工具Alcatraz,也推薦給大家使用,非常爽,想使用什么插件直接搜索安裝即可,還可以隨時刪除,最最最主要的是安裝的插件不需要我們自己破解,內部自動幫我們破解
Alcatraz.png
安裝使用時常見的問題
以下是我幫大家搜索的安裝時常見的一些錯誤
終端 cocoapods 下載bug調試:
錯誤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/
錯誤2:
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/pod
解決方案:蘋果系統升級OS X EL Capitan后會出現的插件錯誤,將安裝流程 4.安裝CocoaPods 的 (1)sudo gem install cocoapods ——>改為sudo gem install -n /usr/local/bin cocoapods
錯誤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 是平臺版本號 ,一定要加上