2012-02-07 53 views
0

我有2個swf將被加載到網站上。假設生成一個字節陣列並傳遞給另一個swf。獲取更新的共享對象數據而不重新打開

的問題是,當我的ByteArray保存到用戶的本地文件共享對象,第二個SWF沒有得到從第一個SWF更新的變量值。

我設置第二SWF檢索值每隔一秒,它沒有得到更新,直到我重新加載頁面。

我刷新並關閉連接,以確保數據被保存在本地路徑上,並且是沒有幫助爲好。

我使用的LocalConnection以及還考慮,但有適用於Mac的Flash Player的一個錯誤,停止它在Mac上主權財富基金之間的工作。讓我別無選擇,只能爲我的項目使用SharedObject。

你們有沒有解決方案?

非常感謝..

+0

從來沒有這麼用於在運行時間分享SWF的之間的數據,所以在沒有真正經歷過,但你刷新的數據? http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/SharedObject.html#flush() – Creynders 2012-02-07 06:36:55

+0

ExternalInterface可以解決嗎? http://stackoverflow.com/a/7341721/1024132 – AsTheWormTurns 2012-02-07 08:28:31

回答

1

我不認爲這種做法將工作(本地共享對象可能是設計沒有考慮到這一點,以及確切的行爲可能瀏覽器和Flash播放器版本之間的差異)。

我會嘗試使用LocalConnection代替。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/LocalConnection.html

編輯:對不起,我錯過了這一點: 「我使用的LocalConnection以及還考慮,但有適用於Mac的Flash Player的一個錯誤,停止它在Mac上主權財富基金之間的工作給我留下任何選擇,只能使用。我的項目的SharedObject。「

我用在Mac上本地連接所有的時間,所以我不知道你指的是什麼。我強烈建議使用一個隨機數,該數字在每個頁面視圖中生成一次,並將其發送到閃存(作爲連接名稱的一部分使用),以確保您不會打開具有相同名稱的多個連接(如果例如用戶在不同的標籤中多次打開您的網站)。

0

我使用這種通信方式沒有問題,它的工作正常。改變數值後你會調用flush嗎?

相關問題