0

LocalConnectionここで説明されているような、通信設定に関するフラッシュ バグを見つけたと思います。以下のサイトは私のものではありません。問題が他のサイトでも発生することを示すために使用しています。

再現方法:

http://fcontheweb.com/articles/localconnection/

2 つのブラウザー ウィンドウでサイトを開く場合は、2 つの as3 コンポーネント間でメッセージを送信する as3 の例を見つけてください。

最初のブラウザ ウィンドウでボタンをクリックします。メッセージ ボックスとローカルで通信します。次に、2 番目のブラウザ ウィンドウでボタンを押しても、何も起こりません。最初のブラウザー ウィンドウを閉じた場合、2 番目のウィンドウで作業を開始するには、ページを更新する必要があります。

これはブラウザのFlash Playerプラグインで両方のウィンドウのas3オブジェクトの名前空間が重複しており、通信路のリンクが上書きされているためだと思います。

2 つのウィンドウを再度開くことで、私の仮説を簡単に検証できますが、ここでは、LAST ウィンドウのボタンを最初に押します。そのウィンドウでは何も起こりませんが、代わりに最初のウィンドウにメッセージが表示されます! どういうわけか、最後のページのレシーバーは作成されません。その名前のレシーバーがフラッシュ プラグインのオブジェクト ストアに既に存在するためです。

これを確認できますか、さらに興味深いことに、これに対する回避策はありますか? ローカルで実行されている swf のインスタンスの数を検出し、それを接続名に使用することは可能でしょうか?

編集:観察された動作はバグではなく、意図された動作です。しかし、私の問題は依然として残っています。同じブラウザ ウィンドウ内のLocalConnectionページが、同じシステム上の別のブラウザ ウィンドウ内の同じページとは独立して通信する方法です。

4

1 に答える 1