作为RSL加载时,Monkey patch flex框架?

时间:2008-10-17 22:26:07

标签: flex monkeypatching rsl

我想将Flex框架加载为RSL(SWZ,使用播放器缓存),但我需要在框架中修补几个错误修复。

许多论坛都认为这是不可能的。有没有人得到这个工作?

5 个答案:

答案 0 :(得分:2)

与使用frame1的其他答案相同,但James Ward有一些代码可以看:http://www.jamesward.com/blog/2009/03/10/flex-monkey-patching-and-framework-rsls/

答案 1 :(得分:1)

我相信只有Adobe签名的库才能利用跨域播放器缓存机制。既然你不会,那就不能。

应该可以创建一个不利用播放器缓存的RSL。如果您有多个Flex应用程序在同一个域中使用相同的Flex SDK RSL并且您将让浏览器缓存它们,这可能很有用。

答案 2 :(得分:0)

我团队中的一个人在大约一个月前试过这个并说他没有问题。如果你的猴子修补类是你的应用程序项目的一部分,那么它应该工作,因为它们被编译到SWF中并基本上“覆盖”框架中的内容。您没有更改Flex框架RSL,因此它仍应加载并缓存。 Adobe没有发表太多解释这一点,但这就是我理解它的工作方式。

答案 3 :(得分:0)

创建一个自定义Preloader供使用,并在其中包含您的覆盖类 - 预加载器在任何RSL(例如框架RSL)之前加载,因此首先是monkeypatched类,并覆盖框架类。

您可以通过此模式强制包含一个类(将其放在您的客户Preloader类中)

import com.yourclass.ClassName

private var emptyVariableTriggerInclusionOfImportedClass:ClassName

答案 4 :(得分:0)

这是另一个为猴子修补类创建单独RSL的解决方案 - http://www.hrundik.ru/blog/