【Xcode】xcconfig(ビルド構成ファイル)の使い方!Build Settings

【Xcode】xcconfig(ビルド構成ファイル)の使い方!Build Settings

この記事からわかること

  • XcodeBuild Settings管理する方法
  • xcconfig(ビルド構成ファイル)の使い方
  • Cocoa Podsでの競合対処法

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

環境

xcconfig(ビルド構成ファイル)とは?

公式リファレンス:Adding a build configuration file to your project

xcconfig(ビルド構成ファイル)」はXcodeのBuild Settings(ビルド設定)の項目を外部ファイルに分離して管理するための形式です。「Build Settings」はプロジェクトのビルド設定を管理するためのセクションでプロビジョニングプロファイルの設定やInfo.plistの指定、Swift Compiler(Swiftバージョン)などを設定することが可能になっています。

【Xcode】アプリを環境ごとに共存させる方法!Bundle IDを本番と開発で切り替える

「Build Settings」の項目はGUI操作で変更することができますが、環境で分岐する設定が見にくかったり、「⌘ + Z」でundoできなかったりと少し管理上煩わしい部分があります。これを「xcconfig(ビルド構成ファイル)」を使用することでテキストファイルベースで変更が可能になったり、環境ごとにファイルを切り分けて作成しておくことで管理がしやすくなります。

xcconfig(ビルド構成ファイル)のメリット

記述方法

「xcconfigファイル」には以下のような形式で設定名と値を記述していきます。行単位で設定項目を羅列していき、重複した設定項目がある場合は最後に記述されている方が反映されます。


<SettingName> = <SettingValue>
ENABLE_PREVIEWS = YES
PRODUCT_NAME = $(TARGET_NAME)
MARKETING_VERSION = 1.0

指定できる値はBooleanStringだけでなく$(変数)などを使用することが可能です。

既存の設定項目のSettingNameは以下を参考にしてください。ちなみに「Build Settings」タブで「⌘ + a」で全選択して「⌘ + c」でコピー、「xcconfigファイル」で「⌘ + v」すると内容をペーストできます。

公式リファレンス:Build settings reference

他の構成ファイルを含める

「xcconfigファイル」では他に定義している「xcconfigファイル」の内容をincludeすることができます。これにより例えばDebugとReleaseで共通するものを「BaseSettings.xcconfig」に定義しておき、それぞれでincludeして適応させるといったことが可能になります。


#include "BaseSettings.xcconfig"

指定した「xcconfigファイル」が見つからない場合は警告が表示されますが警告を表示したくない場合は#include?を使用することで警告の発生を抑制することが可能です。

#include? "BaseSettings.xcconfig"

また同階層に存在しない場合は相対パス/絶対パスでの指定も可能です。

#include "../BaseSettings.xcconfig"
#include "/Users/MyUserName/Desktop/BaseSettings.xcconfig"

xcconfigの使い方

「xcconfigファイル」を追加するにはXcode上部メニューの「File」>「new」>「File from Template..」から「Configuration Settings File」を選択し作成することができます。

【Xcode】xcconfig(ビルド構成ファイル)の使い方!Build Settings

「xcconfigファイル」はベースとなるものと環境ごとに作成しておくと使いやすいです。

【Xcode】xcconfig(ビルド構成ファイル)の使い方!Build Settings

設定を反映させるには?

実際に作成した「xcconfigファイル」を適応させるには「PROJECT」>「Info」>「Configurations」から設定します。それぞれの環境に対して適切なファイルを指定すればOKです。

【Xcode】xcconfig(ビルド構成ファイル)の使い方!Build Settings

ただ「xcconfigファイル」に値を指定しているのに設定が反映されていない場合は「Build Settings」タブの方を確認してみてください。こちらで同様の設定項目にすでに値が入っている場合はそちらが優先されてしまうので対象の項目にカーソルを合わせてdeleteキーで削除すれば「xcconfigファイル」の設定が適応されるようになります。

Cocoa Pods使用の場合の注意点

ライブラリ管理にCocoa Podsを使用している場合はCocoa Podsのxcconfigファイルと競合するので適切にincludeしておく必要があります。


#include "Pods/Pods/Target Support Files/Pods-xxx/Pods-xxx.debug.xcconfig"

#include "Pods/Pods/Target Support Files/Pods-xxx/Pods-xxx.release.xcconfig"

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index