XcodeのRunScriptで便利なスクリプトメモ
TODO
やFIXME
を#warning
で表示
スクリプトの実行タイミングはいつでもいい
# TODOやFIXMEをワーニング出力
# http://stackoverflow.com/questions/24183812/swift-warning-equivalent
TAGS="TODO:|FIXME:"
find "${SRCROOT}" \( -name "*.swift" \) -print0 | \
xargs -0 egrep --with-filename --line-number --only-matching "($TAGS).*\$" | \
perl -p -e "s/($TAGS)/ warning: \$1/"
Fabricのスクリプト実行
実機向けReleaseビルドしたときだけスクリプトを走らせる
最後に実行すれば問題無い
# Releaseビルドの実機ターゲットでのみfabricコマンド実行
if [ "${CONFIGURATION}" = "Release" ]; then
if [ "${PLATFORM_NAME}" = "iphoneos" ]; then
echo "run fabric script"
./Fabric.framework/run 381cf982f670521eefb0eba229ef546959c01f07 68d93c5fd1a5e24c60c12b242fd7628ef2c45087229d51ad96199fdc33d4e171
fi
fi
ビルド番号をビルド日時に変更する
Ad−Hocビルドする場合に設定しておくとFabricのようなクラッシュレポートサービスではいつのビルドのクラッシュなのか判定できて便利。
スクリプトを書き換えてgitのコミットハッシュとかにもできるけど個人的には日時で十分。
Build Settings
のPreprocess Info.plist File
をYES
にする必要あり- ビルドの前に実行する
# ビルド番号を日時に書き換えてアプリをビルドする
NOW=`date "+%Y%m%d%H%M"`
PLIST_BUDDY="/usr/libexec/PlistBuddy"
PLIST_FILE="${TEMP_DIR}/Preprocessed-Info.plist"
echo "plist: ${PLIST_FILE}"
APP_VERSION=$(${PLIST_BUDDY} -c "Print CFBundleShortVersionString" ${PLIST_FILE})
BUILD_VERSION="${APP_VERSION}.${NOW}"
echo "BUILD_VERSION: ${BUILD_VERSION}"
${PLIST_BUDDY} -c "Set :CFBundleVersion ${BUILD_VERSION}" "${PLIST_FILE}"