上一堂課已經教大家如何安裝 CocoaPods,如果還沒有看的人趕快去上課呦!『
《十分鐘學程式》CocoaPods 安裝教學』。那這一堂課就是要
教大家如何使用啦!相信大家學習完後就會拍一下桌子,然後大喊一聲『
原來如此!』(如果沒有不要來打我嘿!) 廢話不要太多,直接進入主要話題吧!
這堂課分四個小節:
・CocoaPods 初始化
・CocoaPods 第三方庫更新
・CocoaPods 刪除部分第三方庫
・把 CocoaPods 從 project
CocoaPods 初始化
1. 首先必須要有一個 Xcode project,如果不知道怎麼建立 Xcode project,那我就....之後再開一堂課吧XD。這邊我新建了一個 project 來做教學,名稱是『
Use CocoaPods Test Project』。
2. 然後開啟 Terminal,(如果不知道如何開啟 Terminal 的人可以在 Spotlight 搜尋,按下
command+space 即可叫出 Spotlight,然後輸入
Terminal,就可以叫出來嚕!!)
3. 在 Terminal 開啟 Xcode project 的位置,最簡單的方式就是
把 project 直接拉到 Terminal,當然前面要先打 cd。如果還是不懂的人,就....照個圖片做嚕!(我已經盡量用得清楚了,不懂的再留言問我唄!)
4. 按下 Enter 後,檢查一下 Terminal 是否已經指向 project 資料夾。(如果你
project 名稱和我不一樣,資料夾名稱當然會和我不一樣喔!)
5. 確認 Terminal 的確在 project 之後,輸入以下指令(輸入完
記得按下 Enter 嘿!):
pod init
6. 此時會發現 project 資料夾內會產生一個『
Podfile』的文字檔,這個檔案是要給 CocoaPods 看的,簡單來說就是 CocoaPods 的 Profile。
7. 接著我們要開始
編輯 Podfile,編輯的方法有很多種,可以用 mac 內建的
vim,或是連點兩下用文字編輯器,還是要安裝其他編輯器都可以。這邊我們用 vim 來做編輯,為何要用 vim 呢?原因很簡單,因為
vim 全是文字介面,
可以讓旁人覺得你很厲害>///<。輸入以下指令:
vim Podfile
8.
Podfile 初始的內容就像這樣
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'Use CocoaPods Test Project' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for Use CocoaPods Test Project
end
9. 這邊我們
利用很熱門的
Firebase 這個第三方庫
來做範例。不過這時候應該很多人會納悶,我們怎麼知道有哪些第三方庫呢?可以去
CocoaPods (
https://cocoapods.org/) 的網頁去查詢有哪些第三方庫,或是可以上谷歌查都有很多喔!
10. 回到編輯 Podfile,我們在
# Pods for Use CocoaPods Test Project 後加入一行『
pod 'Firebase'』,這代表我們要使用 Firebase 這個第三方庫。
*使用 vim 小提示:
・如果
要輸入需要
先按下『 i 』,左下角變成『-- INSERT--』才有辦法輸入喔!
・輸入完
要存檔,要
先按下『 esc 』,左下角的『-- INSERT--』不見,然後
輸入『 :wq 』(會顯示在左下角),按下 Enter 即可。
Podfile 內容就會變成這樣:
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'Use CocoaPods Test Project' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for Use CocoaPods Test Project
pod 'Firebase'
end
11. Podfile 都編輯完後,在 Terminal 輸入以下指令:
pod install
12. 等待貼心的
CocoaPods 安裝完後,他會顯示『
[!] Please close any current Xcode sessions and use `Use CocoaPods Test Project.xcworkspace` for this project from now on.』,意思就是要我們把
原先開啟的 xcodeproj 關閉,然後
開啟 CocoaPods 建好的『xcworkspcae 檔』。
13. 再次打開 project 資料夾,會發現多了很多東西。找到 CocoaPods 所說的『
xcworkspcae 檔』,用力的把它打開吧!
14. 開啟 Xcode 之後會發現,除了有我們之前的 project 之外多了一個
Pods project,CocoaPods 就是利用這個專案
來幫我們管理以及連結第三方庫。
15. 接下來我們就可以輕鬆快樂的使用這些第三方庫嚕!但是
別忘了還是要自己
import 這些函式庫喔!不然 Xcode 會找不到你要使用的 API 喔!像是這次我就要 import Firebase,程式碼如下:
import UIKit
import Firebase
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
}
CocoaPods 第三方庫更新
1. 之前說過,CocoaPods 可以用
一行指令更新所有第三方庫,如果我沒有在這邊教大家,一定都會覺得我在唬爛。一樣要開啟 Terminal,然後把 Terminal 指向 project 資料夾,然後輸入以下指令:
pod update
CocoaPods 刪除部分第三方庫
1.
刪除已經匯入的第三方庫其實很簡單,開啟 Podfile,把要刪掉的第三方庫刪除。這邊我們要把 Firebase 刪掉,所以就要把 pod 'Firebase' 這行刪掉。
原先 Podfile:
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'Use CocoaPods Test Project' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for Use CocoaPods Test Project
pod 'Firebase'
end
刪除後:
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'Use CocoaPods Test Project' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for Use CocoaPods Test Project
end
2. 在 Terminal 輸入以下指令 (注意: Terminal 一樣要指向 project 資料夾):
pod install
3. 會發現 CocoaPods 就會把不要的第三方庫移除了。
4.
刪除完第三方庫後,記得要
把程式碼有使用到這些第三方庫的 API 刪掉喔!不然和下圖一樣出現找不到 API 的窘境。
把 CocoaPods 從 project 全部移除
如果哪天
看不爽 CocoaPods,不想要讓它來管理第三方庫,要
把整個 CocoaPods 從 project 移除其實是比較多步驟的。這一定是 CocoaPods 的陰謀,不想要我們移除 CocoaPods,因為其實這些步驟如果它有心,也可以寫一個指令讓我們呼叫就好...((
這個世界真的太險惡了!!
1. 開啟 project 資料夾,把
Podfile、
Profile.lock、
Use CocoaPods Test Project.xcworkspace(這跟
據 project name 不同會有所不同) 這三個檔案
刪掉,再
把 Pods 這個資料夾刪掉。
2. 開啟 .xcodeproj檔
3.
刪除 Pods 資料夾和
Frameworks 資料夾內報紅的 framework,
不要傻傻的把 Frameworks資料夾整個刪掉呀!(因為網路上有人教把 Pods 和 Frameworks 這兩個資料夾都刪掉),Framework 資料夾內不是只有放 CocoaPods 管理的第三方庫,還會放使用了哪些 apple 內建的 framework,像是這邊就有使用 apple 所提供的 AVKit.framework。
4. 開啟
Build Phases
5. 刪除
[CP] Check Pods Manifest.lock
6. 這樣就成功的把 CocoaPods 全部從 project 移除掉啦!!((
放煙火~ 咻~~嘣!!
〖總結〗
CocoaPods 真的是
一個很好用的第三方庫管理工具,只要大概學一下,就可以很輕鬆地上手。雖然說移除 CocoaPods 並不是那麼人性化,不過其實也不難,幾個步驟即可搞定。所以剛開始接觸 iOS 開發的人可以多多學時如何使用 CocoaPods。
雖然有很多人說,盡量不要使用第三方庫,因為如果哪天他們不維護了會很困擾,這麼說是沒有錯,不過
分工是現在工作的趨勢,如果人手不夠沒有時間自己寫那麼多別人已經整理好的 API,還是可以使用這些第三方庫,這方面就看個人怎麼思考了。
那麼應該會有人說,現在都是使用別人的函式庫,那我們
可不可以自己寫函式庫丟在 CocoaPods 上面提供給別人使用呢?答案是:『可以的!!』。所以之後
會教大家如何把自己寫的函式庫傳到 CocoaPods 來造福大家喔~~
Do this hack to drop 2lb of fat in 8 hours
回覆刪除More than 160k women and men are trying a easy and SECRET "water hack" to drop 2lbs each night while they sleep.
It is effective and works with anybody.
This is how you can do it yourself:
1) Take a drinking glass and fill it with water half the way
2) And then use this awesome HACK
you'll become 2lbs thinner when you wake up!