Flex4 初始化过慢解决方法

昨天找了个免费.net空间,想测试一下做的一个简单Flex4 上传项目的效果。上传所有文件到网站之后,访问项目页面,进度条一点一点艰难的向前移动,到了100%后却不出现程序界面,等待一会儿还是没有出现,于是我去做了别的事情,N分钟之后再来看的时候界面才终于出来了。程序倒是没有问题,可以上传文件。但是这慢到令人发指的初始化加载速度却令人吃惊,很难想象如果用户需要等待这么长时间才能成功访问一个页面是多么可怕的事情。

在网上搜索发现也有朋友遇到了类似的问题,就是初始化太慢。有人评论说Flex4 不如3,还有说退回到flash吧。。我于是就怀疑flex4 是不是真的就是这么个速度。。当然,后来经过不断探索,发现Flex4也是可以很快的(不然谁还用flex4)。

今天早上先上传了个Flex3项目,测试一下速度,果然很快。。几秒钟就加载完毕了。而之前的Flex4 却依然缓慢。我突然想到去找找网上的Flex4 站,看看他们的速度怎么样,结果鼓舞人心,速度很快也是几秒钟的事er。那不可怀疑的,说明我们的程序(编译)还是有问题。

搜索找到了一篇文章关于FLex 4 framework 框架加载的感受(http://docs.iteye.com/blog/521568 )然后又找到了Adobe的论坛(http://forums.adobe.com/message/2428795#2428795)弄明白了原因和解决方案。之所以加载缓慢是因为在Flash builder默认使用了RSL(运行时共享链接),Flex4为了加快加载速度使用了RSL,即把可以共享的框架、类库单独生成文件,并在请求时缓存到Flash cache中,这样只要是同域的Flex项目就都可以使用而不必重新加载从而加快了加载时间。而问题也恰恰处在这个默认设置上,这些共享文件的优先位置是从Adobe的服务端上下载,正是这个请求下载过程造成了加载奇慢。解决的办法就是将这些文件的位置优先指向自己的服务器(本地),Flash builder的Release 发布也可以生成这些文件,只要将这些.swz文件上传至服务器即可。

如何设置RSL路径。网上找了半天,大多数是flex-config.xml,但这个是Flex3的,Flex4 默认是不使用这个文件了。在Adobe的帮助文档上找到了Customize the deployment location of the framework RSLs(http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7add.html)设置方法如图,打开项目--属性--flex构建路径--库路径标签,点开Flex4.1 选择framework.swc的链接类型--编辑--弹出库路径选项框。

可以看到默认的adobe的server路径在第一个,第二个是本地路径(要求与swf在同目录),将第二个调到第一位置(图中已调整)。当然也可以自定义路径,可以是相对的或绝对地址。点击确定保存设置。

这样依次设置

framework_4.0.0.14159.swz

osmf_flex.4.0.0.13495.swz

rpc_4.0.0.14159.swz

spark_4.0.0.14159.swz

sparkskins_4.0.0.14159.swz

textLayout_1.0.0.595.swz

(这篇文章也很有用http://devgirl.org/2010/04/08/framework-rsls-in-flex-builder-vs-flash-builder-performance-and-important-info/)

最后点击项目(Project)--导出发行版(Export Release Build),在bin-release下可以看到生成的.swz文件,第一次要把所有的文件上传到网站,以后只要是同域的其他Flex项目指定好RSL路径,就不必再上传.swz文件了,这样大大减小了swf文件的大小,加快了加载速度。

 

到此解决了开始的问题,同时使得RSL的优点也得到体现。

转载于:https://www.cnblogs.com/dingyingsi/p/3411153.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/408337.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

吉他谱——单身情歌

Am Am F C F 抓不住 爱情的 我, 总是 眼睁睁 看它溜 走, 世界上 幸福的 为了爱 孤军奋 斗, 早就 吃够了 爱情的 苦, 在爱中 失落的 Em F G Am F Em Am 人到处 有,为 何不能 算我一 个。&#x…

react学习(50)--解决异步执行顺序问题

this.props.dispatch({type: activity/addActivityPopup,payload: params,callback: (res) > {if (res.returnCode 0) {message.success(新增成功);if (flag true) {this.props.dispatch({type: activity/publishActivityPopup,payload: { codeList: [res.data] },callbac…

SRZoo--深度学习图像超分辨率工具

点击上方“算法猿的成长“,关注公众号,选择加“星标“或“置顶”总第 145 篇文章,本文大约 2100 字,阅读大约需要 7 分钟前言今天要介绍的是 Github 上一个基于深度学习的超分辨率工具--SRZoo,并且它还提供了多个预训练…

Scapy:局域网MAC地址扫描脚本

转载自:http://blog.sina.com.cn/s/blog_4b5039210100gn6k.html 未测试,回头研究研究。 用pythonscapy写的,只要双击.py文件即可,扫描当地局域网的主机MAC地址,并把结果写入文档保存。 代码如下:用到注册表…

基于 opencv 的图像处理入门教程

点击上方“算法猿的成长“,关注公众号,选择加“星标“或“置顶”总第 146 篇文章,本文大约 5000 字,阅读大约需要 20 分钟前言虽然计算机视觉领域目前基本是以深度学习算法为主,但实际上很多时候对图片的很多处理方法&…

新增两款Skin(clover与Valentine)

感谢沪江博客又为博客园提供两款漂亮的Skin。 clover: Valentine: 转载于:https://www.cnblogs.com/dudu/archive/2005/03/06/113853.html

Linux——进程管理学习简单笔记

基本概念:进程和程序的区别 :1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期,是动态产生和消亡的。2、程序和进程无一一对应关系。一个程…

同一页面引入多个JS文件的编码问题

原来只是觉得IE解析HTML文件的时候,需要知道其传输编码,才能正确处理,而从来没有在意过JavaScript文件的编码问题。结果今天发现同一页面中的多个JavaScript文件如果保存编码不同,也会有出错的问题。这个一般怎么会遇到呢&#xf…

简单盘点 CVPR2020 的图像合成论文

点击上方“算法猿的成长“,关注公众号,选择加“星标“或“置顶”总第 147 篇文章,本文大约 3500 字,阅读大约需要 10 分钟前言本文将简单盘点在 CVPR2020 上的图像合成方面的论文,然后给出下载地址以及开源代码 github…

react学习(53)--传参payload

this.props.dispatch({type: startpage/getStartPageByCode,payload: { code: this.props.location.query.code },callback: (res) > {this.setState({popupByCodeDetail: res.data,});},});

泛化、实现、依赖和关联的区别

传统应用程序设计中所说的依赖一般指“类之间的关系”,那先让我们复习一下类之间的关系:a、实现表示类对接口的实现。UML图中实现使用一条带有空心三角箭头的虚线指向接口,如下: b、泛化表示类与类之间的继承关系、接口与接口之间…

目标检测学习笔记

看完吴恩达老师的 deeplearning.ai 课程目标检测这节课程的学习笔记。 文章目录1. 目标定位(object localization)2. 基于滑动窗口的目标检测算法滑动窗口的卷积实现Bounding Box预测(Bounding box predictions)交并比(Intersection over uni…

win8中完成进度

public sealed partial class WorkItem : Page{private IAsyncAction _threadPoolWorkItem;private ManualResetEvent _sleep new ManualResetEvent(false);public WorkItem(){this.InitializeComponent();}// 在线程池中找一个线程去执行指定的方法,并指定其优先级…

中小企业的软件需求问题

近年来,做为我国经济发展新兴动力的中小企业同时也成为了IT行业的热点市场。IT领域的顶级厂商在高端市场日趋饱和的情况下,正逐渐将眼光投向中小企业市场。而大多数IT厂商由于自身的资源和规模限制无法涉足高端用户,中小企业市场为这些厂商提…

数学学习笔记--线性代数

开始复习 AI 算法的基础–数学部分,主要是三方面的内容: 线性代数概率论微积分 参考内容如下: 《深度学习》https://github.com/scutan90/DeepLearning-500-questionshttps://github.com/sladesha/Reflection_Summary 本文是第一篇&#…

诺基亚S40手机联系人导入安卓手机

电话号码较少的话比较简单,拷贝到SIM卡中通过SIM卡中转,只是一般SIM卡只能存储200个左右,联系人比较多的情况就麻烦一点,今天帮导师把诺基亚5220中的800个电话转到三星S4中,综合下来还是使用了这种方法: 诺…

科技馆游记(精华)-------- double篇

科技馆之流水帐乱弹 时间: 公元2005年5月3日 人物: 饭团 (男主角), double (女主角), 路人甲乙丙丁… 地点: 繁华的大都市上海 天气不错, 挺风和日丽的, 饭团和double都没有课。顺便一说,居然交大连国定的五一假期中都要补课,所以饭团这次百忙之中抽空跟…

远程桌面不能连接,提示awgina.dll取代错误的解决办法

远程桌面不能连接,错误提示:您不能初始化一个远程桌面连接,因为在远程计算机上的windows登录软件被不兼容的软件c:\windows\system32\awgina.dll取代,如下图所示: 原因:如果计算机中装有SymantecpcAnywhere…