所以我们得到了一个包含各种 swf 文件的播放列表,一些旧的 as2 动画,一些新的。我们将它们下载到本地文件夹,并且可以全屏播放。只需一个 AIR (actionscript) 应用程序即可。现在我们知道在较新的文件中有 ExternalInterface.Call(some arguments) 调用。我们需要在托管 AIR 应用程序中处理它们。到目前为止,我们有一个继承自 MovieClip 的类,具有以下构造函数:
public function FlashClip()
{
ExternalInterface.addCallback("FlashPlayerControl1FlashCall",FlashPlayerControl1FlashCall);
}
当我们运行应用程序时,出现以下错误:
错误:错误 #2067:此容器中的 ExternalInterface 不可用。ExternalInterface 需要 Internet Explorer ActiveX、Firefox、Mozilla 1.7.5 和更高版本,或其他支持 NPRuntime 的浏览器。在 Error$/throwError() at flash.external::ExternalInterface$/addCallback() at Video::FlashClip()[C:\Users\Daan\Adobe Flash Builder 4.6\TINS-v2-1\TINSV2\src\Video \FlashClip.as:12] 在 Video::FlashPlayer/BestandOpend()[C:\Users\Daan\Adobe Flash Builder 4.6\TINS-v2-1\TINSV2\src\Video\FlashPlayer.as:43]
在以下行:(FlashPlayer.as:43)
var clip:FlashClip = new FlashClip();
所以,我的问题是这个。是我们正在尝试做的甚至可能的事情。还是我们需要在 actionscript AIR 应用程序中嵌入一个 javascript 容器?或者有谁知道我们将如何让它发挥作用?注意:我们无法更改现有的 swf 文件。我们甚至没有原始的.fla