ied*_*doc 0 apache-flex versioning flash actionscript-3
我在网上看了一遍,似乎找不到将版本号放在swf文件中的方法.我们需要知道我们在不同机器上使用哪个版本的swf文件,所以我们想过如果swf目录中不存在包含swf版本号的文件,可能会写一个文件.我们没有使用Flex和as3,所以由于我们无法写入磁盘而无法工作.所以我一直在环顾四周,无法找到我们指定swf文件版本的地方,如"14.06.30".
有没有办法我们可以设置我们的swf文件的版本?
我们已经考虑使用按键来显示版本号,但是我们不想这样做,因为swf可以加载其他swf,其中按键可能意味着其他东西.这将是最后的手段.
在SWF版本编号,我们使用编译常量http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7abd.html.例如:-define + == CONFIG :: VersionString,'{svn version}'使用Flash构建器,您可以将其添加到其他编译器设置中,或者在Continuous构建脚本中设置此变量.在您的actionscript中,您可以使用'CONFIG :: VersionString'读取此var.
我们将此版本号添加到swf(右键菜单)中的上下文菜单中.
package {
import flash.display.Sprite;
public class Test extends Sprite
{
public function Test()
{
super();
addVersionToContextMenu();
}
private function addVersionToContextMenu () : void
{
var item:ContextMenuItem = new ContextMenuItem("Version: " + CONFIG::VersionString);
var items:Array = this.contextMenu.customItems;
items.push(item);
this.contextMenu.customItems = items;
}
}
Run Code Online (Sandbox Code Playgroud)
}
如果右键单击swf,它看起来像:
