我使用FlashDevelop构建了一个AS3图库。
在我压缩应用程序之前,我只需打开项目的index.html即可在浏览器中运行图库。一切都很完美。
然后我使用winrar将项目压缩为proj-0.1.2.zip。
然后我解压缩这个新创建的zip并尝试使用上面的项目index.html加载应用程序。画廊功能不正常。从看到发生的情况看,似乎图像元数据不存在(但我不确定,见下文)。
还有其他应用程序被破坏。视频无法加载。如果应用程序不依赖于任何外部资产,那么一切看起来都很好。
另一件事......如果我然后构建FlashDevelop项目并重新发布swf ..然后它就像我想要的那样在index.html中工作。这是怎么回事?
我希望人们能够通过运行index.html来启动我的演示应用程序。如果这并不总是有效,他们必须弄清楚他们需要重建SWF,那就非常糟糕了。
答案 0 :(得分:1)
我不认为压缩是问题所在,我认为转移到另一个文件夹是一个问题。
我假设您在本地PC上运行此index.html,而不是在网络服务器上运行?
默认情况下,Flash无法从本地SWF访问以加载其他本地文件。但是,FlashDevelop / Flash CS3 / Flex Builder为了克服这个限制,在flash播放器中设置了一些标志,告诉他“这个SWF是一个受信任的SWF,允许他打开本地文件”。但它是基于SWF的确切位置。
编译器中有一个设置,它在SWF中设置一个标记“此SWF可以访问本地数据”,但有一个缺点:它阻止对网络资源的所有访问。所以它是/或:访问本地数据,或访问网络资源(任何通过HTTP,Socket等)。我不确定这个设置在哪里。可能是Flash CS3的默认设置与FlashDevelop的默认设置不同。
无论如何,避免所有这些问题的简单方法是不在本地运行文件。在测试之前将它放在您的网络服务器上。