我们有一个用Flex编写的应用程序,它显示来自我们应用程序的数据。 .swf文件只有427kb,但在Firefox中加载需要整整五秒钟。这对我们的用户来说很头疼,因为他们需要经常访问包含应用程序的页面。 (该应用程序显示文档,并且通过它们的列表进行游览的速度非常慢。)
我已经确认这不是一个缓慢的Web服务器问题。 .swf似乎在浏览器中缓存。 Firebug报告每次网页访问.swf时,应用服务器都会返回“304 Not Modified”响应,这意味着服务器的加载时间几乎为零。
我们可以做些什么来调试这个问题?或者Flash播放器只是很慢?
答案 0 :(得分:3)
如果您在下载SWF或初始化应用程序时遇到问题,可以尝试将其分解为模块,并使用SWFLoader仅根据需要加载各个部分。 Flex应用程序是2-frame movies,因此您在应用程序中拥有的内容越多,在开始“播放”之前初始化的次数就越多。
如果渲染所有内容的速度很慢,请查看creationPolicy并查看是否有必要创建未显示的项目层次结构。中继器也是notorious for rendering slowly。
如果您的性能问题更多在应用程序中,那么您可以考虑profiling your application来查看热点的位置。
答案 1 :(得分:1)
您是否尝试使用Flex Profiler运行应用程序?这可能有助于您隔离任何性能问题。
答案 2 :(得分:1)
考虑查看Flex RSLs。这些运行时共享库允许Flash Player缓存Flex框架,并在第一次加载后允许更快的启动时间。
答案 3 :(得分:0)
看看 creationPolicy文档..它可能有帮助......
默认值应为“auto”...仅在导航器容器的初始视图中创建所有控件。此设置会缩短应用程序的启动时间,但会导致用户导航的响应时间变慢。
此设置是多视图容器的默认设置。
查看是否有人更改了您的设置。