2010-05-11 86 views
0

我在我的AIR應用程序中加載了Flex應用程序,我正在使用childSandboxBridgeparentSandboxBridge在這兩者之間進行通信。奇蹟般有效。在另一個AIR應用程序中加載Flash/Flex應用程序

但我試圖加載Flash應用程序(主類擴展Sprite,不Application),因此試圖設置loaderInfo對象上childSandboxBridge當我得到一個SecurityError。

在Flex應用程序中,它是這樣的: 由於childSandboxBridge屬性僅在AIR中可用,所以我在投射loaderInfo。

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

在我的Flash應用程序是這樣的:

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

在下面的例子中,我得到了以下的SecurityError:

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

的SecuritySandbox的兩個例子是 '應用'。

任何想法,爲什麼它不適用於Flash應用程序? 在此先感謝。

回答

相關問題