1

スクリプトを使用してリリースの自動バージョン番号を設定しようとしています。

私の最初のビルド フェーズ (ターゲットの依存関係の後) は、次のスクリプトを使用したスクリプトの実行です。

if [ "${CONFIGURATION}" = "Release" ]; then
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion `date +%Y%m%d%H%M`" ProtoMemory/ProtoMemory-Info.plist
fi

または平易な英語で: これがリリース ビルドの場合、ビルド バージョンをリリース日時に設定します。

スクリプトは私がやりたいことを正確に実行しますが、Info.plistファイルをバンドルにコピーした後に実行するようです。つまり、ソースには正しいビルド番号が表示されますが、バンドルには表示されません。

現在、アーカイブを作成する前に 1 回ビルドする (実質的に 2 回ビルドする) というばかげた回避策を使用しています。Info.plistファイルをコピーする前にビルド スクリプトを呼び出す方法はありませんか? または、Xcode は plist の何らかのキャッシュ バージョンを使用していますか? Info.plistまたは、ファイルを再度バンドルにコピーする最終ビルド フェーズを追加することもできます...

何かご意見は?

4

1 に答える 1

1

多分あなたは使うことができますagvtoolか?

agvtool new-version -all `date +%Y%m%d%H%M`

于 2014-01-23T16:23:09.393 に答える