5

Config.xcconfigこの行のみを含む Xcode構成ファイルがあります。

BUILD_DATE=`date "+%B %Y"`

この構成を追加して、正しい方法でプロジェクトを作成したいと思います。

ここに画像の説明を入力してください

ファイル内のBUILD_DATE変数の内容を使用したいApplication-info.plist。どのように?

を使用して値を取得しようとし${BUILD_DATE}ましたが、結果は文字列 `` date "+%B%Y"`であり、値ではありません!

ここに画像の説明を入力してください

ターミナルから、結果は正しいです:

alp$ BUILD_DATE=`date "+%B %Y"`
alp$ echo $BUILD_DATE
March 2013
alp$ 

しかし、Xcodeではありません!

ここに画像の説明を入力してください

どうすればこれを修正できますか?

4

1 に答える 1

3

.xcconfigファイルはシェルスクリプトとして解釈されないため、backtickコマンドを使用してビルド日付を取得することはできません。

最善の策は、このSOの質問(しばらく前に尋ねたもの)で同様のアプローチのBump Build Numberスクリプトを使用することです。これは、外部ビルドスクリプトを使用してファイルを更新するためのソリューションを提供します。.plist

例えば:

#!/bin/sh

if [ $# -ne 1 ]; then
    echo usage: $0 plist-file
    exit 1
fi

plist="$1"
build_date=$(date "+%B %Y")

/usr/libexec/Plistbuddy -c "Set BUILD_DATE \"$build_date\"" "$plist"

次のようなものを使用して、Xcodeビルドスクリプトから呼び出します。

"${PROJECT_DIR}/tools/set_build_date.sh" "${PROJECT_DIR}/${INFOPLIST_FILE}"
于 2013-03-12T12:37:37.063 に答える