我有一个开放的.fla,一些动作变量(网址,标题等)被更改并发布。这种情况发生了很多,而且变量也是一样的。我只是将.swf文件保存为XML文件,但它被上传到第三方平台,因此所有信息都需要包含在.swf文件中。无法将变量信息添加到第三方站点。
我想知道是否有办法在发布时从xml文件中获取新的变量信息(如脚本?),而无需打开Flash IDE。能够同时做一堆这些也很棒。
任何帮助/链接/线索将不胜感激。谷歌没有帮助我。这甚至可能吗?
答案 0 :(得分:1)
如果不打开Flash IDE,则需要使用ANT或简单地使用mxmlc
编译器加载外部资源或构建脚本,这样做会产生以下影响:
mxmlc -o output.swf -source-path="src/" -library-path+=library.swc.
当您指示在编译时嵌入XML时,您可以使用[Embed]
元数据标记嵌入XML,也可以将XML粘贴到类中。
嵌入XML
package
{
public class XmlData
{
[Embed(source = "data.xml", mimeType = "application/octet-stream")]
public static const Xml:Class;
}
}
要使用XML,请将xml
实例化为:
var xml:XML = new XML( new XmlData.Xml );
XML变量
否则,您只需将xml粘贴到类似的类中:
package
{
public class XmlData
{
public static const xml:XML =
<root>
<element />
<element attribute="value">data</element>
</root>;
}
}
虽然您必须编译SWF,但这种方法很简单,因为您只需将XML文档粘贴到类中即可。
这将通过e4x正常引用,无需异步加载。
var data:String = XmlData.xml.element.@attribute;