Uso de la API externa

Flash Player 9 y posterior, Adobe AIR 1.0 y posterior

La API externa de ActionScript 3.0 ( flash.external.ExternalInterface ) permite una comunicación directa entre ActionScript y la aplicación contenedora en la que se ejecuta Adobe Flash Player. Utilice la API ExternalInterface para crear interacción entre un documento SWF y JavaScript en una página HTML.

Puede utilizar la API externa para interactuar con una aplicación contenedora o transferir datos entre ActionScript y JavaScript en una página HTML.

Algunas tareas habituales de la API externa son:
  • Obtener información acerca de la aplicación contenedora

  • Usar ActionScript para llamar al código en una página web mostrada en un navegador o en una aplicación de AIR para escritorio

  • Llamar al código ActionScript desde una página web

  • Crear un proxy para simplificar las llamadas al código de ActionScript desde una página web

Nota: esta sección sobre la interfaz externa solo describe la comunicación entre el código ActionScript de un archivo SWF y la aplicación contenedora que incluye una referencia a la instancia de Flash Player en la que se carga el archivo SWF. En esta documentación no se tratan otros usos de Flash Player en una aplicación. Flash Player se ha diseñado para utilizarse como un complemento de navegador o un proyector (aplicación autónoma). Puede haber compatibilidad limitada con otros escenarios de uso.

Uso de la API externa en AIR

Dado que una aplicación de AIR no tiene ningún contenedor externo, esta interfaz externa no suele activarse (ni suele necesitarse). Si su aplicación de AIR carga un archivo SWF directamente, el código de la aplicación puede comunicarse directamente con el código ActionScript del SWF (sujeto a restricciones del entorno limitado de seguridad).

No obstante, cuando su aplicación de AIR carga un archivo SWF mediante una página HTML en un objeto HTMLLoader (o un componente HTML en Flex), el objeto HTMLLoader hace de contenedor externo. De este modo, puede utilizar la interfaz externa para comunicarse entre el código ActionScript en el archivo SWF cargado y el código JavaScript en la página HTML cargada en el objeto HTMLLoader.