Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex Flex SWF资产在运行时加载到同一ApplicationDomain中的Flash SWF中_Apache Flex_Flash_Actionscript 3_Loader_Applicationdomain - Fatal编程技术网

Apache flex Flex SWF资产在运行时加载到同一ApplicationDomain中的Flash SWF中

Apache flex Flex SWF资产在运行时加载到同一ApplicationDomain中的Flash SWF中,apache-flex,flash,actionscript-3,loader,applicationdomain,Apache Flex,Flash,Actionscript 3,Loader,Applicationdomain,我试图将FlexSDK编译的swf加载到Flash IDE导出的swf中,并通过getDefinition()实例化资产。通常,对于从flashide导出的资产,然后加载到另一个同样来自flashide的swf中,这种方法可以很好地工作 这就是我通常仅使用Flash IDE执行此操作的方式: 加载程序->使用相同的应用程序域->获取定义(类) 现在,使用使用[Embed]元数据标记从FlexSDK编译的“测试”.as: 加载程序->使用相同的应用程序域->获取定义(“测试”\uquo+class

我试图将FlexSDK编译的swf加载到Flash IDE导出的swf中,并通过getDefinition()实例化资产。通常,对于从flashide导出的资产,然后加载到另一个同样来自flashide的swf中,这种方法可以很好地工作

这就是我通常仅使用Flash IDE执行此操作的方式:
加载程序->使用相同的应用程序域->获取定义(类)

现在,使用使用[Embed]元数据标记从FlexSDK编译的“测试”.as:
加载程序->使用相同的应用程序域->获取定义(“测试”\uquo+class)

问题是我不必跟踪加载的资产库,以作为我想要获取的类名的前缀((“测试”u“+类)vs(类))。有没有办法做到这一点而不引用从中提取类的库或不访问原始加载程序?这样我就不需要知道资产来自哪个swf,只需要知道我可以从当前应用程序域实例化的类名


谢谢

您是否尝试过加载swf,当它完全加载时,获取定义(类)?
不嵌入

是的,它的工作原理与我上面所描述的一样,但我正试图避免加载到一堆单独的SWF中。使用flex编译器,它可以将多个SWF嵌入到一个SWF中,并且可以由服务器端脚本管理,以便在必要时更新和重新编译库。考虑更多因素,我认为这是可行的感觉。这个[嵌入]标记将资产嵌入到该类中,而不是该fla的阶段。这就是为什么使用flex时必须在定义前面加上它嵌入的类,而不是在全局命名空间中可用的类。我只需将每个库的类名硬编码到该类型对象的工厂类中,以便安装抱歉打扰你了,抱歉!