CocoaPodsのPodfileの書き方について
ライブラリを一括で管理してくれる存在が必要だったため、CocoaPodsを導入した。
CocoaPodsではPodfileというファイルにて導入したいライブラリを記載し、インストールする。
Podfileにて、各環境(各スキーマ)で同じライブラリを使用するものをまとめて記載したかった
下記がその対応である。
改善前のPodfile
platform :ios, '12.4'
target 'codeApp' do
use_frameworks!
# Pods for codeApp
pod 'SwiftLint'
pod 'Alamofire', '5.0.0-rc.2'
pod 'SnapKit', '5.0.0'
pod 'VegaScrollFlowLayout', '1.1'
end
target 'codeApp-relase' do
use_frameworks!
# Pods for codeApp-relase
pod 'Alamofire', '5.0.0-rc.2'
pod 'SnapKit', '5.0.0'
pod 'VegaScrollFlowLayout', '1.1'
end
target 'codeApp-staging' do
use_frameworks!
# Pods for codeApp-staging
pod 'Alamofire', '5.0.0-rc.2'
pod 'SnapKit', '5.0.0'
pod 'VegaScrollFlowLayout', '1.1'
end
PodfileはRubyで記載されている。Rubyの文法が通じる。下記のような共通定義での読み込みが可能。
改善後のPodfile
platform :ios, '12.4'
def common_pods
# Pods for All
pod 'Alamofire', '5.0.0-rc.2'
pod 'SnapKit', '5.0.0'
pod 'VegaScrollFlowLayout', '1.1'
end
target 'codeApp' do
use_frameworks!
# Pods for codeApp
pod 'SwiftLint'
common_pods
end
target 'codeApp-relase' do
use_frameworks!
# Pods for codeApp-relase
common_pods
end
target 'codeApp-staging' do
use_frameworks!
# Pods for codeApp-staging
common_pods
end
共通定義できるようになり、無駄な記載・記載漏れが防げるようになった。