2010-05-11 8 views
0

Je charge une application Flex dans mon application AIR et j'utilise les touches childSandboxBridge et parentSandboxBridge pour communiquer entre ces deux applications. Fonctionne comme un charme.Chargement d'applications Flash/Flex dans une autre application AIR

Mais j'ai essayé de charger une application Flash (la classe principale étend Sprite, non Application) et donc j'obtenir un SecurityError en essayant de régler le childSandboxBridge sur l'objet loaderInfo.

Dans l'application Flex, c'est comme ceci: Je lance le loaderInfo puisque la propriété childSandboxBridge n'est disponible que dans AIR.

loaderInfo = FlexGlobals.topLevelApplication.systemManager.loaderInfo; 
try { 
    Object(loaderInfo).childSandboxBridge = this; 
} catch(e:Error) { 
... 
} 

Dans mon application Flash, il est comme ceci:

loaderInfo = myMainObject.loaderInfo; // myMainObject is the same class as 'root' 
try { 
    Object(loaderInfo).childSandboxBridge = this; 
} catch(e:Error) { 
... 
} 

Dans l'exemple ci-dessous je reçois la SecurityError suivante:

Error #3206: Caller app:/airapp.swf/[[DYNAMIC]]/1 cannot set LoaderInfo property childSandboxBridge. 

Le SecuritySandbox pour les deux exemples est 'application'.

Des idées pour lesquelles cela ne fonctionne pas avec l'application Flash? Merci d'avance.

Répondre

Questions connexes