@abhinavアプローチを使用しましたが、プロジェクトのニーズに合わせて少し変更しました。2つのターゲットがありますが、どちらもから個別のアプリケーションを構築するために使用されます。
手順
プロジェクトのディレクトリ内のファイルシステムで、フォルダ構造を作成します。
<project_folder>/Settings/debug
<project_folder>/Settings/production
プロジェクトで次のグループを作成します。
Settings
debug
production
を作成し、デバッググループSettings.bundle
に追加して、デバッグフォルダに保存します。(ターゲットに追加しないでください)
.plist
最も幅の広い設定ページが表示されるように編集します(通常、デバッグビルドにはより多くの設定があります)。
バンドルをデバッグフォルダーから本番フォルダーにコピーします
プロジェクトの本番フォルダーSettings.bundle
から本番グループに追加する(ターゲットには追加しないでください)ので、この構造になります
どのターゲットにもsが追加されていないことを確認してくださいSettings.bundle
.plist
AppStoreビルドで出荷したくない設定項目を本番環境から削除します。
バンドルリソースのコピーフェーズの後にスクリプトの実行フェーズを追加する
if [ "${CONFIGURATION}" = "Release" ]; then
cp -r ${PROJECT_DIR}/Settings/production/Settings.bundle "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app"
fi
if [ "${CONFIGURATION}" = "Debug" ]; then
cp -r ${PROJECT_DIR}/Settings/debug/Settings.bundle "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app"
fi
注:リリースとデバッグの2つのビルドスキームがあります。ターゲットの名前にスペースが含まれているため、パスを引用符で囲みました。