Korzystanie z zewnętrznego interfejsu API

Flash Player 9 i nowsze wersje, Adobe AIR 1.0 i nowsze wersje

Zewnętrzne wywołanie interfejsu API języka ActionScript 3.0 (flash.external.ExternalInterface) pozwala w prosty sposób zrealizować komunikację między kodem ActionScript a aplikacją-kontenerem, w której działa program Adobe Flash Player. Istnieje kilka sytuacji, w których konieczne może być użycie zewnętrznego interfejsu API — na przykład podczas tworzenia interakcji między dokumentem SWF a językiem JavaScript na stronie HTML lub podczas tworzenia aplikacji pulpitu, która korzysta z programu Flash Player w celu wyświetlania pliku SWF.

Zewnętrzny interfejs API może służyć do oddziaływania na aplikację kontenera, przekazywania danych między językiem ActionScript i JavaScript na stronie HTML, a także nawiązywania komunikacji i wymiany danych między językiem ActionScript a aplikacją na komputerze stacjonarnym.

Do zadań interfejsu zewnętrznego API należą m.in.:
  • Pobieranie informacji o aplikacji kontenera

  • Korzystanie z języka ActionScript w celu wywołania kodu w aplikacji kontenera, łącznie ze stroną sieci Web lub aplikacją pulpitu

  • Wywołanie kodu ActionScript z kodu w aplikacji kontenera

  • Tworzenie proxy w celu uproszczenia wywoływania kodu ActionScript z aplikacji kontenera

Uwaga: To omówienie interfejsu zewnętrznego zawiera tylko informacje dotyczące komunikacji między językiem ActionScript w pliku SWF a aplikacją kontenera, która zawiera odwołanie do programu Flash Player lub instancji, do której załadowany jest plik SWF. Inne zastosowania programu Flash Player w aplikacji nie zostały omówione w niniejszej dokumentacji. Program Flash Player jest przeznaczony do użycia jako wtyczka przeglądarki lub jako projektor (aplikacja samodzielna). Inne scenariusze użycia mogą być obsługiwane w ograniczonym zakresie.

Korzystanie z zewnętrznego interfejsu API w środowisku AIR

Ponieważ aplikacja AIR nie zawiera kontenera zewnętrznego, ten interfejs zewnętrzny nie ma zastosowania — nie jest w ogóle potrzebny. Po bezpośrednim załadowaniu pliku SWF przez aplikację AIR kod aplikacji może nawiązać komunikację bezpośrednio z kodem ActionScript w pliku SWF (z uwzględnieniem ograniczeń bezpiecznego obszaru izolowanego).

Jednak po załadowaniu pliku SWF przez aplikację AIR za pomocą strony HTML w obiekcie HTMLLoader (lub komponentu HTML w środowisku Flex) obiekt HTMLLoader będzie pełnił funkcję kontenera zewnętrznego. W ten sposób można użyć interfejsu zewnętrznego w celu nawiązania komunikacji między kodem ActionScript w załadowanym pliku SWF a kodem JavaScript na stronie HTML załadowanej do obiektu HTMLLoader.