2017-01-06
6:15 PM
CocoaPods 可以看作是 Gradle 或 Maven 的 Swift 版本
能夠協助管理引用的 libraries
雖然沒有與 XCode 做介面上的整合
但使用方式與 Gradle 相當類似 因此很容易就可以上手
首先開啟終端機後輸入以下命令就會開始安裝
sudo gem install cocoapods
安裝完成後將目前的工作目錄切換到專案的根目錄底下
cd ~/AppCodeProject/MyProject
再輸入以下命令即可初始化專案
pod init
初始化完成後可以看到專案根目錄底下新增了一個 Podfile 檔案
這個檔案與 gradle.build 檔案是相當類似的一個存在
主要用來管理目前專案中有用到哪些 libraries
以下為加入了 Firebase libraries 的檔案範例
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'MyProject' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for MyProject
pod 'Firebase/Core'
pod 'Firebase/AdMob'
pod 'Firebase/Messaging'
pod 'Firebase/Crash'
target 'MyProjectTests' do
inherit! :search_paths
# Pods for testing
end
target 'MyProjectUITests' do
inherit! :search_paths
# Pods for testing
end
end
其中的 # Pods for MyProject 就是可以加入 libraries 的地方
只要使用 pod 'LIBRARY_NAME' 就完成了加入的動作
之後再到終端機介面使用 pod install 即可開始下載需要的檔案
不過這邊要注意一點
如果是第一次使用 CocoaPods 建議使用以下步驟來做第一次的初始化動作
pod setup --verbose
pod install --verbose
setup 動作是初始化 master repo(--verbose 表示要輸出 log 可以明白目前的處理進度)
這個動作會將 git 上的所有檔案下載下來 需時非常久
若沒有經過這個動作而直接使用 pod install 可能會失敗或是卡住
如果說你已經卡在 pod install 的動作的話
可以先使用以下命令將原本的 master repo 移除 重新初始化
pod repo remove master
setup 動作完成後再使用 install 將 libraries 下載回來
以上動作完成之後會在專案根目錄內新增一個 MyProject.xcworkspace 的檔案
之後請使用這個檔案開啟專案(原本應該是使用 MyProject.xcodeproj)
開啟後可以在 XCode 的介面發現多了一個新的 Pods 專案
裡面包含著我們引入的所有 libraries
可以試著開啟一個 swift 檔案使用 import 看看是否可以成功
若在日後需要新增 library 只要再次編輯 Pod 檔案即可
編輯後使用 pod install 會下載新增的項目
而原本已存在的 libraries 則不會進人任何動作,所以不必擔心每次更新一大堆還要檢查相容信
但若是使用 pod update 則除了下載新增項目之外,還會額外檢查已存在的 libraries 是否有新的版本
這是 install 與 update 的最主要差異
請各位視情況選擇使用的命令,避免更新到尚未支援的版本造成困擾喔!
各項資料連結
CocoaPods