Xcode8でBundle IDを設定する
Xcode8でBundle Identifier(以降Bundle ID)を設定する方法。
たしかXcode7あたりから設定箇所が変わりましたよね。
プロジェクトを作る
Bundle IDはプロジェクトを作るときに設定する項目から自動的に作成されます。
<Bundle ID> = <Organization Identifier>.<Product Name>

Bundle IDを変更する
ただ単にBundle IDを変更する場合の手順
- Project Navigator(左ペインの一番左のアイコン)
- プロジェクトの設定を開く
- Bundle IDを変更したいTARGETを開く
Bundle Identifierを書き換える

Bundle IDをConfigurationで分ける
DebugビルドとReleaseビルドでBundle IDを分けたい場合。
- Project Navigator(左ペインの一番左のアイコン)
- プロジェクトの設定を開く
- Bundle IDを変更したいTARGETを開く
- 検索窓でフィルタリング、
product bundle identifierと入力(identifierでも問題ない Product Bundle Identifierは最初折りたたまれているので展開すると、プロジェクトに設定されたConfigurationが表示される(デフォルトはDebugとRelease)- ConfigurationのBundle IDの欄をダブルクリックなどで編集
※ スクショと見た目が違う場合は緑の枠の設定を見比べてください

Bundle IDを変えるメリットとデメリット
Bundle IDはアプリの住所のようなものなので、DebugとReleaseで同じBundle IDだと上書きインストールされて、別のBundle IDだと共存させることができます。
別のBundle IDだとプッシュ通知やアプリ内課金などBundle IDにひもづいたそれぞれの証明書が必要になるので面倒が増えることも多いです。
Bundle IDの設定箇所
Bundle IDはMyProj.xcodeproj/project.pbxprojというパスのファイルの中でPRODUCT_BUNDLE_IDENTIFIERというキーで指定されているので、ここを直接編集することも可能です。
project.pbxprojのPRODUCT_BUNDLE_IDENTIFIERが参照するためには、該当ターゲットのInfo.plist Fileで指定されているplistファイルのBundle Identifierの項で$(PRODUCT_BUNDLE_IDENTIFIER)が指定されている必要があります。
