Включить данные XML (или JSON) во время публикации - Flash
У меня есть.fla, который открывается, несколько переменных ActionScript (URL, заголовок и т. Д.) Изменяются и публикуются. Это часто случается, и это одни и те же переменные. Я бы просто сохранил файл.swf вместе с файлом XML, но он загружался на стороннюю платформу, поэтому вся информация должна содержаться в файле.swf. Нет возможности добавить информацию о переменной на сторонний сайт.
Я хочу знать, есть ли способ получить информацию о новой переменной из файла XML или что-то во время публикации (например, сценарий?) Без необходимости открывать Flash IDE. Быть способным сделать кучу всего этого также было бы здорово.
Любая помощь / ссылки / ведет будут оценены. Гугл мне не помог. Это вообще возможно?
1 ответ
Без открытия Flash IDE потребуется загрузка внешних ресурсов или сценария сборки с использованием ANT или просто с mxmlc
компилятор, что-то вроде:
mxmlc -o output.swf -source-path="src/" -library-path+=library.swc.
Как вы указали встраивание XML во время компиляции, вы можете встраивать XML, используя [Embed]
тег метаданных или вставьте свой 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;