Uso dell'API esternaFlash Player 9 e versioni successive, Adobe AIR 1.0 e versioni successive L'API esterna di ActionScript 3.0 (flash.external.ExternalInterface) consente una comunicazione diretta tra ActionScript e l'applicazione contenitore in cui è in esecuzione Adobe Flash Player. Esistono diverse situazioni in cui è consigliabile utilizzarla; ad esempio quando si crea un'interazione tra un documento SWF e JavaScript in una pagina HTML o quando si crea un'applicazione desktop che utilizza Flash Player per visualizzare un file SWF. Potete utilizzare l'API esterna per interagire con un'applicazione contenitore, passare dati tra ActionScript e JavaScript in una pagina HTML, nonché stabilire comunicazioni e scambiare dati tra ActionScript e un'applicazione desktop. Di seguito sono riportate alcune operazioni comuni con l'API esterna:
Nota: questa discussione sull'interfaccia esterna si concentra solo sulla comunicazione tra ActionScript in un file SWF e l'applicazione contenitore che include un riferimento all'istanza di Flash Player in cui il file SWF è caricato. Qualsiasi altro uso di Flash Player all'interno di un'applicazione non è contemplato da questa documentazione. Flash Player è progettato per essere utilizzato come plug-in per browser o come proiettore (applicazione autonoma). Altri scenari di impiego potrebbero avere un supporto limitato.
Uso dell'API esterna in AIRPoiché un'applicazione AIR non dispone di un contenitore esterno, questa interfaccia esterna non è in genere valida né è in genere necessaria. Quando l'applicazione AIR carica un file SWF direttamente, il codice dell'applicazione può comunicare con il codice ActionScript in SWF (soggetto a limitazioni della sandbox di sicurezza). Tuttavia, quando l'applicazione AIR carica un file SWF utilizzando una pagina HTML in un oggetto HTMLLoader (o un componente HTML in Flex), l'oggetto HTMLLoader agisce come contenitore esterno. Pertanto, potete utilizzare l'interfaccia esterna per comunicare tra il codice ActionScript nel file SWF caricato e il codice JavaScript nella pagina HTML caricata in HTMLLoader. |
|