shell – 如何获取XCode以将Info日期和时间添加到Info.plist文件中

前端之家收集整理的这篇文章主要介绍了shell – 如何获取XCode以将Info日期和时间添加到Info.plist文件中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
最后…经过几年的观察和一个月的参与,我有机会问你们一个我自己的问题.

我的老板不相信我(或任何过程)增加一个编号,他也想要一个建立日期&时间烘焙到应用程序.我想把它放在通常的Info.plist文件中.

我发现这个相关的问题:

Build information in iOS Application (date/time app was built)

并根据答案,我进入了计划编辑器,并将下面的脚本添加到构建阶段的“后动作”部分:

infoplist="$BUILT_PRODUCTS_DIR/$INFOPLIST_PATH"
builddate=`date`
if [[ -n "$builddate" ]]; then
  defaults write "${infoplist%.plist}" BuildDate "${builddate}"
fi

在XCode中,我的Scheme Editor窗口如下所示:

不幸的是,BuildDate从未被写入Info.plist.

将“${builddate}”更改为“$builddate”也不起作用.我把这行添加到脚本中:

echo "build date is $builddate" > /tmp/result.txt

并且该日期在写出的文件中显得非常好.从上述脚本将字符串写入Info.plist文件中的工作完全正常,令人厌烦.

那么总结一下,如何把日期添加到Info.plist文件中?

迈克尔答案中的代码不正确或不再是最新的.以下版本修复了集合语法中的错误,并且还支持其中具有空格的构建路径.
infoplist="$BUILT_PRODUCTS_DIR/$INFOPLIST_PATH"
builddate=`date`
if [[ -n "$builddate" ]]; then
    # if BuildDateString doesn't exist,add it
    /usr/libexec/PlistBuddy -c "Add :BuildDateString string $builddate" "${infoplist}"
    # and if BuildDateString already existed,update it
    /usr/libexec/PlistBuddy -c "Set :BuildDateString $builddate" "${infoplist}"
fi

注意:此更改是作为编辑提交但被拒绝,我还没有足够的声誉发表评论他的答案…

猜你在找的Bash相关文章