[ascoders] Re: LocalConnection

  • From: Timo Stamm <t.stamm@xxxxxxxxxx>
  • To: ascoders@xxxxxxxxxxxxx
  • Date: Mon, 04 Oct 2004 17:10:13 +0200

Jan.


Mit LocalConnection registrierst du einen Namen (sozusagen eine LocalConnection Domäne) für die Verbindung.


Wenn du ein zweites Browserfenster öffnest kann dein Skript in dem neuen Fenster die Domäne nicht registrieren. Das heisst dass Verbindungen auch von einem swf aus dem neuen Browserfenster an das swf im alten Fenster vermittelt werden.

LocalConnection funktioniert nicht nur innerhalb eines Browserfensters, sondern global in allen Instanzen des Flash-Plugins.

Du kannst das Problem umgehen indem du serverseitig eine Id an an eine Gruppe von swfs verteilst, mit der du deine Domäne eindeutig kennzeichnest.

Du solltest ausserdem beachten dass es zu sehr nervigen Fehlern kommen kann wenn du dich darauf verlässt dass die Verbindung zwei swfs auch zustande kommt wenn sie gleichzeitig geladen werden und in den ersten Skriptzeilen LocalConnection.connect, bzw. LocalConnection.send aufrufen.

Es kann nämlich dazu kommen dass LocalConnection.send aufgerufen wird, bevor die Domäne registriert ist, weil das andere swf noch nicht geladen ist. Hier gibt es zwar einen kleinen Zeitraum, über den LocalConnection.send nach der Domäne sucht, aber darauf kann man sich nicht verlassen.

Du solltest also auf jeden Fall einen "Handshake" machen. Ich habe mal ein Objekt genau dafür geschrieben. Wenn Interesse besteht kram ich's mal raus.


Gruss, Timo


Jursa, Jan (init) wrote:
Mahlzeit.
Ist euch folgendes auch schon passiert?:
Zwei Flashfilme innerhalb der selben seite sollen sich munter unterhalten. Ich hab also in jedem Flashfilm die ganze LocalConnection story heruntergeschrieben....
Wenn ich nun im IE teste ist alles super. Wenn ich in Firefox teste ist auch alles super.
Wenn ich aber *beide* Browser offen habe, funktioniert LocalConnection immer in dem Browser nicht der zuletzt geöffnet worden ist... macht das sinn?
Grüsse,
jan
------------------------------------------------------
Archiv   : //www.freelists.org/archives/ascoders/
Optionen : //www.freelists.org/list/ascoders
------------------------------------------------------

Other related posts: