In ActionScript you have two options to communicate to the host. (In my case a .NET app that uses AxInterop.ShockwaveFlashObjects.dll to host the flash movie)
fscommand(String, ...);
ExternalInterface.call(String, ...);
what are the main differences between the two?
Could it be that fscommand arrives with a little delay on the host side? (i.e. it is not blocking and could therefore get mixed up with ExternalInterface calls?)
ExternalInterface
is a direct replacement for fscommand
, which was the old method (pre Flash player 8) of communicating between Flash and the container application (see Adobe documentation).
From the documentation again, the advantages of ExternalInterface
over fscommand
are as follows:
If you're targeting Flash Player 8 or later the recommendation is that you use ExternalInterface
.