我正在尝试构建我的flex模块化应用程序,并获得了以下场景
门户(包括2个模块:) -Mod1 (.swf) -Mod2 (.swf)
另外,我还有Mod1-API (.swc)
Mod1-API定义了在Mod1 (.swf)上实现的接口。Mod1和Mod2 swfs都会导入Mod1-API。
我正在尝试调用Mod2上的API方法。在Mod2上我保留了这个接口,因为它是通过Mod1-API项目共享的。
我试图实现的是通过反射,使用getDefinitionByName方法在Mod2上加载真正的实现类,但它说它没有定义。
那么,有没有办法做到这一点呢?
我的意思是,如何从mod2加载Mod1项目中的类,将接口返回给mod2,这样它就可以像调用普通API方法一样调用方法?
发布于 2010-09-07 01:56:08
这取决于您加载类定义的位置。Flex同时使用安全域和应用程序域来划分已加载的代码。
如果希望模块2访问通过模块1加载的代码,则需要将它们加载到相同的安全域和应用程序域中。
This应该会给你一个好的开始。
https://stackoverflow.com/questions/3652837
复制相似问题