更新:
我发现我的问题仅在将我的项目创建为 Flash Web 应用程序时存在(这是我通常所做的,因为我不希望用户安装空中应用程序)。如果我只是导出项目并尝试运行 .swf 文件,则会收到一条错误消息:Error#2148: SWF File file:///blablabla.swf cannon access local resource file:///blablabla.xml
所以我通常做的是:运行 .swf 丢弃错误消息(然后加载,但由于某种原因平滑不起作用)。单击文件-> 创建投影仪(这让我可以为此 Web 应用程序创建一个 .exe 文件)
现在我已经完成了这个,我可以使用新创建的 .exe 文件开始相同的演示文稿。这一次,我没有收到任何错误,一切正常。
这就是我在制作这样的东西时所做的方式。这个项目是一个带有菜单的视频播放器,包含所有要播放的电影。它还为电影实现了提示点和字幕。
无论如何,当使用这个过程时,当我试图跳到电影中几分钟的提示点时,我会遇到很大的延迟。接近当前播放时间的提示点是可以的,但距离越远,需要的时间就越长。这是不可接受的。
如果我调试它,你直接从我的项目文件夹(我允许使用本地文件)运行发布,然后它运行顺利。如果我创建一个 Air 应用程序,它也可以顺利运行..
仅当运行从 .swf 文件创建的生成的 .exe 文件时,才会存在此问题。
有想法该怎么解决这个吗?
我需要的是:我想向我的客户发送一个文件夹(或 .zip 文件)。他应该打开它,然后简单地运行演示文稿(.swf 或 .exe)。我不想让他安装演示文稿。
以下是我之前的一些资料:
这是单击提示点时的功能:
private function cuePointClickHandler(cTime:int, cText:String, cNr:int):Function{
return function(e:MouseEvent):void{
trace("Array added: " + cTime);
videoPlayer.playheadTime=cTime;
currentCuePointText=cText;
changeCaption(currentCuePointText);
currentCuePoint=cNr;
trace("Current CuePoint NR: " + currentCuePoint + " ClickHandler!");
updateControls();
}
}
这是显示问题的电影:如您所见,当我跳过接近当前时间时,没有问题或延迟。当我点击更远的地方时,会有几秒钟的延迟。在较慢的机器上,这甚至更长。我需要它更平滑,如果可能的话,最多延迟 1 秒。