[小ワザ][Xcode] Info.plistからBuild SettingsのUser Defined Setting項目を参照させて、Build Configurationごとの挙動を変える

ios

はじめに

おばんです、iOSエンジニアやめた田中です。

今回はちょっとしたXcodeの使い方Tipsの紹介です。

やりたいこと

Build ConfigurationごとにBundle Identifierを切り替えて別アプリとして認識させるものを作りたいなど、環境を変更したい。

別の解決策ではダメな理由

案1. ビルドするたびにInfo.plistを書き換える

  • 手間がかかる🙅
  • Typoなどの人的ミスが増える🙅

案2. ビルドターゲットとInfo.plistを作り分ける

  • Info.plistを作り分けて管理すると、どれかひとつのInfo.plistに変更があったときに共通項目を他のInfo.plistも書き換えなくてはいけなくなって手間🙅

Info.plistからBuild SettingsのUser Defined Setting項目を参照させて、Build Configurationごとの挙動を変える

Build Settingsに設定を追加する

Project > Target > Build Settings > + > Add user defined settings すると、Build Configurationごとの新しい設定項目が追加できる。

aaa

Info.plistに参照先のUser Defined Settingを指定する

$(User Defined Setting名) の記述方法で、先ほど作成したUser Defined Settingを指定する。

bbbbb

おわりに

ちょっとした設定変更ではありますが、Xcodeのビルド設定などは少しとっつきずらいところもあるので紹介して見ました。お役立ていただければ幸いです。

利用シーンの近いものとして以下の記事もありますので、合わせてお読みください。