通過Xcode的pre|post-action功能,在Build或打包時(shí)通過腳本的方式檢查提示環(huán)境配置.
!!!注意 Provide build seetings from
選擇自己的scheme,否則下面的env
命令不會(huì)輸出build使用的環(huán)境變量.
前提
為了便于我們寫腳本,需要查看環(huán)境變量.我們可以通過重定向標(biāo)準(zhǔn)輸出到我們指定的文件中. 然后通過查看指定的文件來找我們需要的環(huán)境變量.
#輸出內(nèi)容到~/prebuild.log
exec > "~/prebuild.log" 2>&1
#env命令可以輸出環(huán)境變量
env
常用的環(huán)境變量有:
CONFIGURATION
: Debug,Release...
PROJECT_DIR
:項(xiàng)目根目錄
腳本中還使用了osascript
命令,osascript
可以執(zhí)行OSA腳本.
#定義數(shù)組
declare -a ARRAY=($(val))
#輸出數(shù)組長度
${#ARRAY[@]}
方式一
#!/bin/sh
#applescript通過"' '"(雙引號包單引號)的方式引用環(huán)境變量
osascript -e 'tell app "Xcode" to display dialog "'${CONFIGURATION}'"'
xcschemeDir=${PROJECT_DIR}/項(xiàng)目名稱.xcodeproj/xcshareddata/xcschemes/項(xiàng)目名稱.xcscheme
config=$(xmllint --xpath "string(//Scheme/ArchiveAction/@buildConfiguration)" $xcschemeDir)
if [ $config != "Release" ]; then
osascript -e 'tell app "Xcode" to display dialog "正在非Release打包!"'
fi
方式二
#applescript通過"' '"(雙引號包單引號)的方式引用環(huán)境變量
osascript -e 'tell app "Xcode" to display dialog "'${CONFIGURATION}'"'
if [ $CONFIGURATION != "Release" ]; then
osascript -e 'tell app "Xcode" to display dialog "正在非Release打包!"'
fi