现有网络环境还不太适合访问大数据量的网络页面,特别是越来越注重用户体验的今天。如果一个页面加载好好几秒,势必会使用户有关掉页面的冲动,更别说会去体验你所谓的“超酷应用”。所以对于RIA开发者,如何减小最终生成的文档类swf大小就成为十分重要的优化环节了。本文在深入研究Flex开发特性的基础上,总结了有效减小swf大小的通用手法,希望对大家有借鉴作用。
1.尽量减少容器之间的深层次嵌套,嵌套太多的容器如VBox和Canvas后不仅生成很多冗余代码,也会使得你的程序运行相当缓慢;
2.尽量不要使用embed嵌入资源,特别是嵌入字体。一般字体都很大,当你嵌入某种中文字体后会发现swf轻而易举就超过了1M;
3.把一个大的Flex程序分成各个不同的功能部件, 每个Module单独编译成一个SWF ,需要的时候,再动态 的加载调用.减小主程序的体积.
4.使用RSL(Runtime Shared Library)
5.使用release版本发布
下面重点介绍RSL和Module两种方式具体使用。
RSL是运行时共享库。RSL分认证的RSL和非认证的RSL,听说在这里采用的认证的RSL, 经过认证的RSL可以使用Flash Player Cache机制,从而达到更快的启动效率。对于Flex开发来说,Flex组件框架就是属于认证的RSL.不用Framework RSL, 你的程序就是这样的:你自己的自定义类代码 + 你必须使用的Flex自带类 (framework)。如果使用了Framework RSL你的程序就只包含你自己写的类代码而已, 体积就很小了,framework会变成另一个文件, 动态加载到你的程序里。当一个用户加载了任何一个使用此版本RSL的应用程序后,此版本RSL会被其缓存在flash player的cache中,并且这个cache不随着浏览器缓存清空而清空,以后如果此用户再次加载使用此版本RSL的程序的时候便不再需要加载此RSL,加载速度将大大提高。RSL不光能针对Framework来做。你自己写的lib库都可以。此外有些组件比如Chart不在Framework.swc里,而是在datavisualization.swc内,图表用得多的话记得把这个也做到RSL里去。
分离RSL的步骤:
1.在项目文件夹中点右建,选择"properties"-"Flex Build Path"-"Library Path"
2.该选项卡上我们看到"FrameWork linkage",默认是选中"Merged into cdoe"
3.点开下拉,选择"runtime shared library(RSL)",按"OK“即可
这样我们的项目就已经使用RSL把框架文件分离出来了。
注意:需要把framework_3.4.0.9271.swf和framework_3.4.0.9271.swz两个文件跟项目swf放在一目录下传到服务器上
使用Module的方式也比较简单,可以从文档类application里面提取出功能模块,对这些模块分别建立一个Module文件,然后编译后每个模块都会生成单独的一个swf,有些和jsp的include类似。Module最好和RSL配套使用。这并不能减少体积,但能减少用户等待载入的时间。
分享到:
相关推荐
Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex ...
本方案将详细探讨如何在Flex项目中实现完美的多语言支持,以满足i18n(国际化)的需求。 首先,我们需要了解什么是i18n。i18n是“国际化”的缩写,这里的数字18代表英文单词"internationalization"中的字母数量。这...
Flex加密算法设计方案主要涉及到的是在开发Flex应用程序时,如何对代码进行保护,防止未经授权的访问和反编译。Flex是一种基于ActionScript的开放源码框架,用于构建富互联网应用程序(RIA)。由于其开源特性,Flex...
Flex是Adobe公司推出的一种基于ActionScript 3.0的开源框架,主要用于构建富互联网应用程序(Rich Internet Applications,简称RIA)。这种技术允许开发者创建具有高度交互性和动态视觉效果的Web应用,提供比传统...
Flex Cookbook是一种实用型的参考资料,其中包含大量解决实际问题的代码示例和解决方案。它涵盖了Flex开发中遇到的各种常见问题,如用户界面设计、数据绑定、事件处理、动画制作等,是开发者在实际开发中快速查找和...
Flex相册 Flex图片
在IT领域,CSS3是层叠样式表的第三版,为网页设计带来了许多...CSS3动画让页面动态效果更加生动,而Flex布局则提供了强大的布局解决方案,适应各种屏幕尺寸和设备。熟练掌握这些技术,将极大地提升你的前端开发能力。
Flex是Adobe公司推出的一种用于构建富互联网应用程序(RIA)的技术,它基于ActionScript编程语言和Flex框架,可以创建交互性强、用户体验优秀的Web应用。本教程是作者精心编写的Flex学习资料,适合初学者入门,通过...
本文将深入探讨FLEX图表相关解决方案,帮助你理解如何利用FLEX进行高效的数据图表开发。 首先,FLEX(Flex SDK)是由Adobe公司开发的一套开源开发框架,用于构建富互联网应用程序(Rich Internet Applications,...
这样的集成解决方案能够充分利用Flex的前端优势,BlazeDS的数据传输效率以及Spring的后端服务管理能力,打造出高性能、用户体验良好的Web应用。对于需要构建复杂交互和实时数据更新的项目,这种全栈式解决方案尤其...
Flex是Adobe公司开发的一种开放源代码的富互联网应用程序(RIA)框架,主要用于构建具有动态图形、交互性丰富的Web应用。Flex应用程序通常使用ActionScript编程语言,并基于Flash Player或Adobe AIR运行时环境。Java...
Flex是Adobe公司推出的一种用于构建富互联网应用(RIA, Rich Internet Applications)的开源框架,它主要基于ActionScript编程语言和MXML标记语言。这个“Flex实战项目”可能是一个使用Flex技术构建的实际应用示例,...
Flex是Adobe公司开发的一种富互联网应用(Rich Internet Application,RIA)框架,主要用于构建运行在浏览器上的交互式应用程序。Flex以其强大的MXML和ActionScript编程语言,以及基于Flash Player或Adobe AIR运行时...
Java Flex入门实例主要涉及到的是Java和Adobe Flex的集成开发,这是一种常见的富互联网应用程序(Rich Internet Application...在实际开发中,还可以根据需求考虑使用其他的Java Flex集成方案,如 GraniteDS 或 LCDS。
Flex API 是一种软件开发接口,主要用于构建富互联网应用程序(Rich Internet Applications,简称RIA),它由Adobe公司开发,用于提供强大的图形和交互性功能。在本文中,我们将深入探讨Flex API的核心概念、主要...
为了深入学习FLEX,你可以查阅官方文档,参加在线课程,或者加入开发者社区,如Stack Overflow和Flex开发者论坛,获取更多实践经验和解决方案。 总之,FLEX是一个强大的工具,能够帮助开发者创建互动性强、功能丰富...
Flex是由Adobe公司开发的一种开放源码的富互联网应用程序(RIA)框架,主要用于构建和部署跨平台、跨浏览器的互动用户界面。本教程基于Flex官方文档,旨在为开发者提供中文版的详细学习指南,帮助理解并掌握Flex的...
Flex是Adobe公司开发的一种用于创建富互联网应用程序(RIA)的开放源代码框架,它主要基于ActionScript编程语言和MXML标记语言。这个“Flex中文教程”显然是为了帮助初学者掌握Flex开发技术,通过配合使用Flex...
### Flex3与Flex4对比分析 #### 一、概述 随着技术的发展,Adobe Flex平台也在不断进化以满足日益增长的应用需求。本文旨在详细介绍Flex3与Flex4之间的主要区别,特别是Flex4相较于Flex3的新功能与改进之处。通过...
Java_Flex技术结合了Java的强大后端处理能力和Flex的富互联网应用程序(RIA)前端展示功能,为开发跨平台、交互性强的Web应用提供了强大的解决方案。本文将深入探讨Java与Flex的集成,以及如何利用这两项技术的优势...