我想在我的flex / air应用程序中包含编译日期和版本号。
我不知道怎么能得到这个,或者它是否可能。有办法吗?
感谢。
答案 0 :(得分:1)
我们正在为构建系统使用Ant,它具有自动更新某些属性文件的功能。我们设置日期/时间戳来记录编译时间。它还可以将属性识别为数字并每次递增它 - 我们将其用作构建号。然后我们的Flex应用程序只加载此属性并根据需要显示它。
<target name="update-version-info">
<property environment="env"/>
<property file="${file.props.versioninfo}" prefix="old"/>
<propertyfile file="${file.props.versioninfo}">
<entry key="system.build.user" value="${env.USER}"/>
<entry key="system.build.host" value="${env.COMPUTERNAME}"/>
<entry key="system.build.date" value="${DSTAMP}-${TSTAMP}"/>
<entry key="system.build.number" value="${old.system.build.number.next}"/>
<entry key="system.build.number.next" default="${old.system.build.number.next}" type="int" operation="+"/>
</propertyfile>
</target>
对于额外的积分,将构建过程绑定到源控制系统并检查更新的属性文件 - 这使得它对我们来说非常自动。如果您使用Ant,这可能会帮助您。
请注意,{DSTAMP}和{TSTAMP} Ant属性是在Ant调用时使用&lt; tstamp&gt;设置的。任务。
答案 1 :(得分:1)
有一种方法可以仅使用ActionScript来执行此操作,其中涉及使用ByteArray加载源。它不适合胆小的人,而是独立于ANT或其他第三方应用程序而工作:http://www.actionscript.org/forums/showthread.php3?t=239907
答案 2 :(得分:0)
据我所知,不是 - 除非您在编译时手动将其写入应用程序,或者让您的构建脚本以某种方式自动执行。 FlexBuilder和Flash都不支持附加那种元数据。至少还没有。