通过Xcode的pre|post-action功能,在Build或打包时通过脚本的方式检查提示环境配置.
!!!注意 Provide build seetings from
选择自己的scheme,否则下面的env
命令不会输出build使用的环境变量.
前提
为了便于我们写脚本,需要查看环境变量.我们可以通过重定向标准输出到我们指定的文件中. 然后通过查看指定的文件来找我们需要的环境变量.
#输出内容到~/prebuild.log
exec > "~/prebuild.log" 2>&1
#env命令可以输出环境变量
env
常用的环境变量有:
CONFIGURATION
: Debug,Release...
PROJECT_DIR
:项目根目录
脚本中还使用了osascript
命令,osascript
可以执行OSA脚本.
#定义数组
declare -a ARRAY=($(val))
#输出数组长度
${#ARRAY[@]}
方式一
#!/bin/sh
#applescript通过"' '"(双引号包单引号)的方式引用环境变量
osascript -e 'tell app "Xcode" to display dialog "'${CONFIGURATION}'"'
xcschemeDir=${PROJECT_DIR}/项目名称.xcodeproj/xcshareddata/xcschemes/项目名称.xcscheme
config=$(xmllint --xpath "string(//Scheme/ArchiveAction/@buildConfiguration)" $xcschemeDir)
if [ $config != "Release" ]; then
osascript -e 'tell app "Xcode" to display dialog "正在非Release打包!"'
fi
方式二
#applescript通过"' '"(双引号包单引号)的方式引用环境变量
osascript -e 'tell app "Xcode" to display dialog "'${CONFIGURATION}'"'
if [ $CONFIGURATION != "Release" ]; then
osascript -e 'tell app "Xcode" to display dialog "正在非Release打包!"'
fi