flex RSL

RSL(Runtime shared libraries)即动态链接库,在程序运行时由FlashPlayer动态加载。静态链接库是SWC文件,通过编译器的library-path和include-libraries编译进应用程序。采用静态链接的应用程序SWF会产生比较大的文件以及更长的下载时间。使用RSL的应用程序载入时间短且文件比较小,而且提高了内存使用效率,只是在开始需要花点时间下载RSL。RSL的强大体现在多个应用程序共享公共代*时,因为RSL只需要被下载一次,多个应用程序动态链接到相同的RSL,访问其中已经缓存在客户端的资源。虽然RSL的巨大优点是缓存到客户端,但是它并不考虑库中的哪些类被真正用到,就把整个RSL库都下载来。

RSL分为两种:未签名和签名的。未签名的RSL,比如标准的和跨域的SWF文件,存储在浏览器缓存里。签名的RSL,这是经过Adobe签名过的,扩展名为.swz,存储在Flash Player 缓存中。只有Adobe才可对RSL进行签名,以此提高安全防止第三方工具注入攻击及执行代*。


1 swz  2. swc(!=rsl) 3 swf

compc默认debug是true,mxmlc默认debug是false.

[备忘] swf swc swz RSLs ant

http://www.smithfox.com/?e=135

使用RSL发布flex项目需要的build.xml要诀详解

http://blog.ityao.com/archives/751

Flex 4.5 RSL 改进

http://yunzhongxia.iteye.com/blog/1138196

1 未签名的RSL,比如标准的和跨域的SWF文件,存储在浏览器缓存里(XP系统:C:\Documents and Settings\{username}\Local Settings\Temporary Internet Files)。下图中as3corelib.swf为第三方的一个工具类,采用的是未签名的RSL。

2 签名的RSL,这是经过Adobe签名过的,扩展名为.swz,存储在Flash Player 缓存中。只有Adobe才可对RSL进行签名,以此提高安全防止第三方工具注入攻击及执行代码,目前只有flex的sdk才是签名的RSL。签名的RSL 会优先被缓存在Flash Player中, (XP系统:C:\Documents and Settings\${username}\Application Data\Adobe\Flash Player\AssetCache)而且可以被任何应用程序访问, 即使是和原先程序不同的domain也能.

swz文件只需下载一次, 就算是浏览器缓存被清除, swz也可以从disk重新读出. 而未签名的RSLs(以swf以形式存在) 只能缓存在各个浏览器中, 如果浏览器的清除了缓存, 就需要再次下载, 而且被限定为只能在Application同一domain内被访问.

针对自定义的SWC,修改其link type为RSL,选择None,同时勾上Automatically extract swf to deployment path(自动将SWF提取到部署路径)。如果想对不同域的RSL共享,则选择Digests(摘要),同时指定其Policy file url(策略文件)


Open Source Media Framework (OSMF)

Flash Player 10.1内部机制(第二部分) - 执行模型之可变跑道

http://blog.csdn.net/zlxluofeng/article/details/5516349


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值