我使用Loader.loadBytes将swf动态加载到我的应用程序中(我使用此方法将模块加载到应用程序中)。我的麻烦是,当我想使用ExternalInterface.addCallback来允许我的应用程序上的js调用。当调用这些函数时,会抛出SecurityError,因为我不在正确的安全域中。尝试通过LoaderContext设置加载内容的SecurityDomain会导致另一个错误,告诉我SecurityDomain不能为null。有没有办法让我的模块可以从JS访问?
*注: 我在我的主ap(实例化加载模块的模块控制器的那个)中设置了以下内容:
Security.allowDomain("*");
Security.allowInsecureDomain("*");
加载代码:
var _contextLoader:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain);
_contextLoader.allowCodeImport = true;
_moduleLoader.loadBytes(moduleBytes, _contextLoader);
错误:
SecurityDomain 'null' tried to access incompatible context ...