複数のターゲットに同じPodをインストールする場合のBest Practice

  • 21
    いいね
  • 2
    コメント
この記事は最終更新日から1年以上が経過しています。

新年仕事始めしたらcocoapodsの新しいのが出てたのでインストールしてみたら怒られた。

[!] The dependency `Google` is not used in any concrete target.

Stackoverflow曰く、ちゃんとTargetsを書かないとイカンらしい。(考える前にググる派)

さて、私のプロジェクトは同じコードベースで複数のTargetにビルドしているので、バカっぽく書くと

target "A" do
  # 20行ぐらいのpods
end

target "B" do
  # 上と同じpods
end

target "C" do
  # 上と同じpods
end

みたいな感じで馬鹿っぽい。

どうしたもんかな、と思ってたのだけど、PodfileはただのRubyなので、podのところは関数にしてまとめちゃえる。
Python脳なので、Ruby感がわからなかったが、Natashaさんのブログを参考にした。

def install_pods do
  # 20行ぐらいのpods
end

target "A" do
  install_pods
end

target "B" do
  install_pods
end

target "C" do
  install_pods
end

これでちょっとはましになった。