概要
iOSアプリの開発したことない状態で、iOSアプリの検証してて、「Info.plistでどうたらすればいいんじゃね?」
みたいなこと言われて、よくわかんなかったので調べて自分の理解を自分の言葉でまとめたもの。
そもそも漠然としていだいていた疑問として以下があった。
- Build Settingsとかとどんな位置づけの違いがあんねん・・・。
- ユーザー自身が定義する定数を記載できるらしい?User-Definedとかいうのも聞いたことあんぞ・・・
- っていうかInfo.plistとかいうファイル、今の案件のプロジェクト内に見当たらないんだが・・・
Info.plistとは?
ざっくりいうと以下の設定を行うというファイルらしい。
- 実行ファイルを実行するシステムにあらかじめ知らせておくべき情報
- ビルド時のユーザー定義定数(ただし、Configure毎に分けたい場合は、その値はBuild SettingsのUser-Definedに記述)
Build Settingsとの位置づけの違い
Build Settingsは、その名の通りビルド(=ソースコードをコンパイル)して実行ファイルを作る際の設定だが、
Info(Info.plist)は、
実行ファイルを実行するシステムが、実行ファイルを読むときにあらかじめ知っておく必要のある設定
が主な位置づけみたい。
を見た感じだと。
User-Definedとの関係
Build SettingsのUser-Definedでソース内で利用する定数をConfigure(デフォルトでDebug, Releaseが用意されているアレ)毎に設定でき、その定数を読み込むためにはInfo.plist経由で読む必要があって、Info.plistにもUser-Definedで定義した定数について記述してやらないとダメ、ってことらしい。
を見た感じだと。
加えて、Configureによらない定数は、Info.plistに直接書いてもいいみたい。
Info.plistに設定する項目
わかりやすいものとしては、以下のようなものがあるみたい。
- Bundle display name: 実機でアプリアイコンの下に表示されるアプリ表示名
- Icon file: アプリアイコン画像ファイル
- Bundle identifier: アプリのユニークキー。Apple Developer Programでも設定が必要だったような。
Info.plistのパス設定
Target > Build Settings > Packaging - Info.plist Fileで設定する。
「Info.plist」というファイル名である必要はない模様。
参考
Information Property List
Info.plist - iPhoneアプリ開発の虎の巻
User Defined Build Setting