【问题标题】:How to keep track of application version when compiling using Adobe Flex 3?使用 Adob​​e Flex 3 编译时如何跟踪应用程序版本?
【发布时间】:2024-01-12 06:40:01
【问题描述】:

在 Adob​​e Flex 文件中编译 swf 文件时如何监控 swf 文件中的版本?

【问题讨论】:

  • 您能否编辑您的问题以澄清您的意思?是否要将 Flex 源文件中的版本嵌入 SWF 中?您如何分配该版本号 - 或者您首先对此有疑问?

标签: apache-flex adobe versioning


【解决方案1】:

假设我正确理解了您的问题,您应该查看我的这篇博客文章,标题为 "Saving and Accessing Version/Compilation Information with Flex Applications",它继续解释了如何使用 mxmlc 编译器中的 条件编译 功能来将变量值保存到编译后的二进制文件中,然后将它们打印到应用程序本身的日志中(或显示在用户界面中)。

以下是该帖子中的相关 sn-ps:

# Compiling the binary with the conditional compilation parameter:
/path/to/mxmlc -define+=DEBUG::compiled,"Fri_Sep_12_17:26:13_on_Alis-MacBook.local" -strict=true /path/to/myApp.mxml

// Printing out the "compiled" value in the application code:
var DEBUG:Namespace = new Namespace("DEBUG");
var compiledStr:String = DEBUG::compiled;
trace("SWF was compiled: "+compiledStr);

就实际的“版本号”而言,我只使用了三件事:

  • 编译日期(有关如何自动执行此操作的信息,请参阅帖子中的示例脚本)
  • 编译它的计算机的主机名(也在帖子中演示)
  • 工作副本的 SVN 版本(有关如何获取 SVN 版本号的信息,请参阅 my answer to this question

【讨论】:

  • 您知道在 Flex Builder 中自动执行此操作的简单方法,这样我就不必每次都手动更新编译器选项了吗?
  • 不,我不 :( 我建议使用脚本为您执行此操作并将其绑定到 FB 中的 keycombo。然后问题就变成了 mxmlc 比 fcsh 慢得多的事实(FB 使用),但我也研究了一些自动化 fcsh 使用的选项:hasseg.org/blog/?p=194