Adobe AIR - загрузка локального SWF-файла с помощью Htmlloader в ActionScript или HTML - PullRequest
0 голосов
/ 26 марта 2020

Необходимость загрузки локального SWF-файла в приложение Adobe AIR с использованием класса Htmlloader, поскольку в локальном SWF-файле используются такие классы, как ExternalInterface, для которого требуется веб-набор. Структура каталогов выглядит следующим образом:

HelloWorld
├── HelloWorld-app.xml
├── HelloWorld.as
├── HelloWorld.swf
└── LocalSWF.swf

HelloWorld.as

package { 
    import flash.display.Sprite;
    import flash.html.HTMLLoader;
    import flash.net.URLRequest;
    import flash.filesystem.File;
    import flash.display.Loader;

    public class HelloWorld extends Sprite 
    { 
        public function HelloWorld() 
        {
            var html:HTMLLoader = new HTMLLoader();
            var urlReq:URLRequest = new URLRequest("LocalSWF.swf");
            html.width = stage.stageWidth;
            html.height = stage.stageHeight;
            html.load(urlReq);
        } 
    } 
}

HelloWorld-app. xml

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://ns.adobe.com/air/application/3.1">
    <id>HelloWorld</id> 
    <versionNumber>0.1</versionNumber> 
    <filename>HelloWorld</filename> 
    <initialWindow> 
        <content>HelloWorld.swf</content> 
        <visible>true</visible> 
        <width>1000</width> 
        <height>1000</height> 
    </initialWindow> 
</application>

Компиляция ActionScript для файла swf с помощью этой команды

~/flex_sdk_4.6/bin/amxmlc HelloWorld.as и файл HelloWorld.swf создаются.

Запускается ~/flex_sdk_4.6/bin/adl HelloWorld-app.xml и в приложении ничего не отображается.

Мы даже можем использовать html или xml вместо ActionScript требуется только загрузить локальный SWF-файл с помощью Htmlloader.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...