[英]Can I update an Android manifest xml file via a GooglePlay update
[英]can I use cygwin with bash script to update Android manifest on commit?
我发现此链接https://stackoverflow.com/questions/6579697/android-how-to-make-the-versioncode-update-automatically-with-every-build包含以下代码:
#!/usr/bin/env bash
MANIFEST="AndroidManifest.xml"
if [ -f $MANIFEST ]
then
LINE=$(grep -o ${MANIFEST} -e 'android:versionCode="[0-9]*"');
declare -a LINE;
LINE=(`echo $LINE | tr "\"" " "`);
VERSION=(${LINE[1]});
INCREMENTED=$(($VERSION+1))
sed "s/android:versionCode=\"[0-9]*\"/android:versionCode=\"${INCREMENTED}\"/" $MANIFEST > $MANIFEST.tmp && mv $MANIFEST.tmp $MANIFEST
git add $MANIFEST
echo "Updated android:versionCode to ${INCREMENTED} in ${MANIFEST}";
fi
我正在将TortoiseSVN与Windows SVN服务器一起使用(VisualSVN),所以我想知道是否可以将它放入cygwin命令中,以便svn中的预提交钩子可以运行此命令? 我没有太多使用cygwin,但是我正在寻找一种方法,使每次构建提交时都更新我的版本名称。
编辑:实际上看起来您可以使用工具调用FART http://fart-it.sourceforge.net/来查找和替换文本,因此我可以在SVN预提交中编写批处理脚本来查找和替换文本替换文本。
编辑#2:FART会更复杂,我将尝试使用第一个脚本,但是将“ git add”替换为“ svn add”,看看是否可行
在您提到的同一篇文章中,我发布了一个不同的解决方案,因为SVN大胆建议不要使用pre-commit钩子更改提交内容,否则可能会损坏所有内容! 您的清单可以在svn中永久保留相同的versionCode,而应该更改/bin/AndroidManifest.xml,这将被打包在.apk文件中
您可以将Maven( 支持Android开发 )与buildnumber插件一起使用 。
它使您可以通过SCM,顺序的内部版本号或时间戳创建内部版本号。 请参阅用法页面 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.