Referência do ActionScript® 3.0 para Adobe® Flash® Platform
Início  |  Ocultar listas de Pacotes e Classes |  Pacotes  |  Classes  |  Novidades  |  Índice  |  Apêndices  |  Por que inglês?
Filtros: AIR 30.0 e anterior, Flash Player 30.0 e anterior, Flash Lite 4
Flex 4.6 e anterior, Flash Pro CS6 e anterior
Ocultar filtros
flash.external 

ExternalInterface  - AS3

Pacotesx

Nível superior
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Elementos de linguagem

Constantes globais
Funções globais
Operadores
Instruções, palavras-chave e diretivas
Tipos especiais

Apêndices

Novidades
Erros do compilador
Avisos do compilador
Erros de runtime
Migrando para o ActionScript 3
Conjuntos de caracteres suportados
Tags MXML apenas
Elementos XML de movimento
Marcas de texto cronometradas
Lista de elementos deprecados
Constantes de Implementação de Acessibilidade
Como Usar Exemplos do ActionScript
Aspectos jurídicos
Pacoteflash.external
Classepublic final class ExternalInterface
HerançaExternalInterface Inheritance Object

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

A classe ExternalInterface é uma interface de programação de aplicativo que ativa a comunicação franca entre ActionScript e o container SWF – por exemplo, uma página de HTML com o Javascript ou um aplicativo de mesa que usa Flash Player para exibir um arquivo SWF.

Usando a classe ExternalInterface, você pode chamar uma função ActionScript no tempo de execução de Flash, usando JavaScript na página HTML. A função ActionScript pode retornar uma valor e o JavaScript a recebe imediatamente como o valor de retorno da chamada.

Esta funcionalidade substitui o método fscommand().

Use a classe ExternalInterface nas combinações a seguir do navegador e do sistema operacional:

NavegadorSistema operacionalSistema operacional
Internet Explorer 5.0 e posterior Windows  
Netscape 8.0 e posterior Windows  MacOS 
Mozilla 1.7.5 e posterior Windows  MacOS 
Firefox 1.0 e posterior Windows  MacOS 
Safari 1.3 e posterior  MacOS 

O Flash Player para Linux versão 9.0.31.0 e posterior suporta a classe ExternalInterface nos seguintes navegadores:

Navegador
Mozilla 1.7.x e posterior
Firefox 1.5.0.7 e posterior
SeaMonkey 1.0.5 e posterior

A classe ExternalInterface exige que o navegador da Web do usuário suporte o ActiveX ® ou o NPRuntime API que é exposto por alguns navegadores para script de plug-in. Mesmo se uma combinação do navegador e do sistema operacional não estiver listada acima, ela deve suportar a classe ExternalInterface se suportar o NPRuntime API. Consulte http://www.mozilla.org/projects/plugins/npruntime.html.

Observação: Ao incorporar arquivos SWF a uma página HTML, verifique se o atributo id está definido e se os atributos id e name das tags object e embed não incluem os seguintes caracteres:

 . - + * / \
 

Observação para aplicativos de Flash Player: a versão 9.0.115.0 de posterior do Flash Player permite o . caractere (ponto) nos atributos id ename.

Observação sobre os aplicativos do Flash Player: no Flash Player 10 e posterior em execução no navegador, o uso dessa classe programaticamente para abrir uma janela pop-up pode não ser bem-sucedido. Vários navegadores (e configurações de navegador) podem bloquear janelas pop-up a qualquer momento; não é possível garantir que todas as janelas pop-up sejam exibidas. No entanto, para ter boa chance de sucesso, use essa classe para abrir uma janela pop-up somente no código que seja executado como um resultado direto da ação do usuário (por exemplo, em um manipulador de eventos para um evento de clique de mouse ou de pressionamento de tecla.)

No ActionScript, é possível fazer o seguinte na página HTML:

  • Chamar qualquer função JavaScript.
  • Transmitir qualquer número de argumentos, com quaisquer nomes.
  • Transmitir vários tipos de dados (Boolean, Number, String e assim por diante).
  • Receber um valor de retorno da função JavaScript.

No JavaScript na página HTML, é possível:

  • Chamar qualquer função ActionScript.
  • Transmitir argumentos usando a notação de chamada da função padrão.
  • Retornar um valor para a função JavaScript.

Observação para aplicativos de Flash Player: o Flash Player não suporta atualmente arquivos SWF incorporados dentro de formas HTML.

Observação para aplicativos de AIR: No Adobe AIR, a classe ExternalInterface pode ser usada para realizar a comunicação entre o Javascript em uma página HTML carregada no controle de HTMLLoader e ActionScript no conteúdo SWF incorporado naquela página de HTML.

Veja os exemplos

Mais exemplos

Elementos da API relacionados



Propriedades públicas
 PropriedadeDefinido por
  available : Boolean
[estático] [somente leitura] Indica se este player está em um contêiner que oferece uma interface externa.
ExternalInterface
 Inheritedconstructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto.
Object
  marshallExceptions : Boolean = false
[estático] Indica se a interface externa deve tentar transmitir exceções ActionScript ao navegador atual e exceções JavaScript ao player.
ExternalInterface
  objectID : String
[estático] [somente leitura] Retorna o atributo de id da marca de objeto no Internet Explorer ou o atributo de nome da marca incorporada no Netscape.
ExternalInterface
Métodos públicos
 MétodoDefinido por
  
addCallback(functionName:String, closure:Function):void
[estático] Registra um método ActionScript como chamável a partir do contêiner.
ExternalInterface
  
call(functionName:String, ... arguments):*
[estático] Chama uma função exposta pelo contêiner SWF, transmitindo zero ou mais argumentos.
ExternalInterface
 Inherited
Indica se um objeto tem uma propriedade especificada definida.
Object
 Inherited
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro.
Object
 Inherited
Indica se a propriedade especificada existe e é enumerável.
Object
 Inherited
Define a disponibilidade de uma propriedade dinâmica para operações de repetição.
Object
 Inherited
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade.
Object
 Inherited
Retorna a representação de string do objeto especificado.
Object
 Inherited
Retorna o valor primitivo do objeto especificado.
Object
Detalhes da propriedade

available

propriedade
available:Boolean  [somente leitura]

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Indica se este player está em um contêiner que oferece uma interface externa. Se a interface externa estiver disponível, esta propriedade será true; caso contrário, ela será false.

Nota: ao usar a API externa com HTML, sempre verifique se o HTML concluiu o carregamento antes de tentar chamar quaisquer métodos JavaScript.



Implementação
    public static function get available():Boolean

Exemplo  ( Como usar este exemplo )
O exemplo a seguir usa a propriedade available para determinar se o player está em um contêiner que oferece uma interface externa.
     package {
       import flash.text.TextField;
       import flash.display.MovieClip;
       import flash.external.ExternalInterface;
     
       public class extint_test extends MovieClip {
         public function extint_test() {
           var isAvailable:Boolean = ExternalInterface.available;
           var availTxt:TextField = new TextField();
           availTxt.text = isAvailable.toString();
           addChild(availTxt);
         }
       }
     }
     

marshallExceptions

propriedade 
public static var marshallExceptions:Boolean = false

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9.0.115.0, Flash Lite 4

Indica se a interface externa deve tentar transmitir exceções ActionScript ao navegador atual e exceções JavaScript ao player. É necessário definir explicitamente essa propriedade como true para detectar as exceções JavaScript no ActionScript e detectar as exceções ActionScript no JavaScript.

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )
O exemplo a seguir cria uma função ActionScript e a registra com o navegador incluído ao usar o método addCallback(). A nova função emite uma exceção para que o código JavaScript que está sendo executado no navegador possa detectá-la. Este exemplo também contém uma instrução try..catch para detectar quaisquer exceções emitidas pelo navegador quando a função throwit() é chamada.
package
{
    import flash.external.*
    import flash.net.*;
    import flash.display.*;
    import flash.system.System;
    public class ext_test extends Sprite {
    function ext_test():void {
        ExternalInterface.marshallExceptions = true;
        ExternalInterface.addCallback("g", g);

        try {
        ExternalInterface.call("throwit");
        } catch(e:Error) {
        trace(e)
        }
    }
    function g() { throw new Error("exception from actionscript!!!!") }
    }
}

objectID

propriedade 
objectID:String  [somente leitura]

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Retorna o atributo id da marca object tag no Internet Explorer ou o atributo name da marca embed no Netscape.



Implementação
    public static function get objectID():String
Detalhes do método

addCallback

()método
public static function addCallback(functionName:String, closure:Function):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Registra um método ActionScript como chamável a partir do contêiner. Após uma chamada bem-sucedida do addCallBack(), a função registrada no player pode ser chamada pelo código JavaScript ou ActiveX no contêiner.

Observação: Para o conteúdo local que está sendo executado em um navegador, as chamadas para o método ExternalInterface.addCallback() só funcionarão se o arquivo SWF e a página da Web contida estiverem na área de segurança local confiável. Para obter mais informações, consulte o tópico do Centro de desenvolvedores do Flash Player: Security.

Parâmetros

functionName:String — Nome pelo qual o contêiner pode chamar a função.
 
closure:Function — Função de fechamento a ser chamada. Esta pode ser uma função livre ou pode ser um fechamento de método que se refere a um método de uma ocorrência de objeto. Ao transmitir um fechamento de método, é possível direcionar o retorno de chamada em um método de uma ocorrência de objeto específica.

Observação: a repetição addCallback() em uma função de retorno de chamada existente com um valor de fechamento null retira o retorno de chamadas.


Lança
Error — O contêiner não suporta as chamadas recebidas. As chamadas recebidas são suportadas somente no Internet Explorer para Windows e navegadores que usam o NPRuntime API como Mozilla 1.7.5 e posterior ou Firefox 1.0 e posterior.
 
SecurityError — Um retorno de chamada com o nome especificado já foi adicionado pelo ActionScript em uma caixa de proteção à qual você não tem acesso; não é possível sobrescrever essa chamada de retorno. Para resolver este problema, regrave o ActionScript que originalmente chamou o método addCallback() para que ele também chame o método Security.allowDomain().
 
SecurityError — O ambiente incluído pertence a uma área de segurança para a qual o código de chamada não tem acesso. Para corrigir este problema, siga estas etapas:
  1. Na marca object do arquivo SWF na página HTML incluída, defina o seguinte parâmetro:

    <param name="allowScriptAccess" value="always" />

  2. No arquivo SWF, adicione o seguinte ActionScript:

    flash.system.Security.allowDomain(sourceDomain)

Elementos da API relacionados

call

()método 
public static function call(functionName:String, ... arguments):*

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Chama uma função exposta pelo contêiner SWF, transmitindo zero ou mais argumentos. Se a função não estiver disponível, a chamada retorna null; caso contrário, ela retorna o valor fornecido pela função. A recursão não é permitida nos navegadores Opera ou Netscape; nestes navegadores uma chamada recursiva produz uma resposta null. (A recursão é suportada nos navegadores Internet Explorer e Firefox).

Se o contêiner for uma página HTML, esse método chamará uma função JavaScript em um elemento script.

Se o contêiner for outro contêiner ActiveX, esse método enviará o evento FlashCall ActiveX com o nome especificado e o contêiner processará o evento.

Se o contêiner estiver hospedando o plug-in Netscape, é possível gravar o suporte personalizado para a nova interface do NPRuntime ou incorporar um controle HTML e incorporar o Flash Player no controle de HTML. Se você tiver incorporado um controle de HTML, será possível se comunicar com o Flash Player por meio de uma interface do JavaScript para o aplicativo do contêiner nativo.

Observação: Para o conteúdo local que está sendo executado em um navegador, as chamadas para o método ExternalInterface.call() só serão permitidas se o arquivo SWF e a página da Web contida (se houver) estiverem na área de segurança local confiável. Além disso, é possível evitar que um arquivo SWF use este método ao definir o parâmetro allowNetworking das marcas object e embed na página HTML que contém o conteúdo SWF. Para obter mais informações, consulte o tópico do Centro de desenvolvedores do Flash Player: Security.

Observação sobre os aplicativos do Flash Player: no Flash Player 10 e no Flash Player 9 Update 5, alguns navegadores da Web restringem esse método caso haja um bloqueador de pop-ups habilitado. Nessa situação, você só pode chamar esse método com êxito em resposta a um evento de usuário (por exemplo, no manipulador de eventos de um clique do mouse ou um evento de pressionamento de tecla).

Parâmetros

functionName:String — Nome alfanumérico da função a ser chamada no contêiner. O uso de um nome de função não alfanumérico causa um erro de tempo de execução (erro 2155). Você pode usar um bloco try..catch para tratar o erro.
 
... arguments — Argumentos a serem transmitidos para a função no contêiner. É possível especificar zero ou mais parâmetros, separando-os por vírgulas. Eles podem ser de qualquer tipo de dados do ActionScript. Quando a chamada for para uma função JavaScript, os tipos ActionScript serão automaticamente convertidos em tipos JavaScript; quando a chamada for para algum outro contêiner ActiveX, os parâmetros serão codificados na mensagem de solicitação.

Retorna
* — Resposta recebida do contêiner. Se a chamada falhou – por exemplo, se não houver tal função no contêiner, a interface não está disponível, uma recursão ocorreu (com um navegador Netscape ou Opera), ou há um problema de segurança – null é retornado e um erro é despachado.

Lança
Error — O contêiner não suporta as chamadas enviadas. As chamadas enviadas são suportadas somente no Internet Explorer para Windows e navegadores que usam o NPRuntime API como Mozilla 1.7.5 e posterior ou Firefox 1.0 e posterior.
 
SecurityError — O ambiente incluído pertence a uma área de segurança para a qual o código de chamada não tem acesso. Para corrigir este problema, siga estas etapas:
  1. Na marca object do arquivo SWF na página HTML incluída, defina o seguinte parâmetro:

    <param name="allowScriptAccess" value="always" />

  2. No arquivo SWF, adicione o seguinte ActionScript:

    flash.system.Security.allowDomain(sourceDomain)


Exemplo  ( Como usar este exemplo )

O seguinte exemplo mostra como você pode usar a classe ExternalInterface (flash.external. ExternalInterface) para enviar uma cadeia de Flash Player ao container de HTML onde ele é exibido usando a função de alerta() de Javascript. Exemplo fornecido por ActionScriptExamples.com.
//
// Requires:
//   - A Flash Professional Label component on the Stage with an instance name of "lbl".
//   - A Flash Professional Button component on the Stage with an instance name of "button".
//
var xmlResponse:String = "<invoke name=\"isReady\" returntype=\"xml\"><arguments><number>1</number><number>" + stage.stageWidth + "</number><number>" + stage.stageHeight + "</number></arguments></invoke>";
 
lbl.text = "ExternalInterface.available: " + ExternalInterface.available;
lbl.width = 200;
button.enabled = ExternalInterface.available;
button.addEventListener(MouseEvent.CLICK, button_click);
 
function button_click(evt:MouseEvent):void {
    ExternalInterface.call("alert", xmlResponse);
}
ExternalInterfaceExample.as

O exemplo a seguir demonstra como enviar dados entre o Flash Player e o contêiner HTML.
package  {
    
    import flash.display.Sprite;
    import flash.events.*;
    import flash.external.ExternalInterface;
    import flash.text.TextField;
    import flash.utils.Timer;
    import flash.text.TextFieldType;
    import flash.text.TextFieldAutoSize;
    import flash.system.Security;
    
    public class ExternalInterfaceExample extends Sprite 
    {
        
    private var input:TextField;
        private var output:TextField;
        private var sendBtn:Sprite;
        
        public function ExternalInterfaceExample() 
        {
            // constructor code
            Security.allowDomain("*");
            
            
            input = new TextField();
            input.type = TextFieldType.INPUT;
            input.background = true;
            input.border = true;
            input.width = 350;
            input.height = 18;
            addChild(input);

            sendBtn = new Sprite();
            sendBtn.mouseEnabled = true;
            sendBtn.x = input.width + 10;
            sendBtn.graphics.beginFill(0xcccccc);
            sendBtn.graphics.drawRoundRect(0, 0, 80, 18, 10, 10);
            sendBtn.graphics.endFill();
            sendBtn.addEventListener(MouseEvent.CLICK, clickHandler);
            addChild(sendBtn);

            output = new TextField();
            output.y = 25;
            output.width = 450;
            output.height = 325;
            output.multiline = true;
            output.wordWrap = true;
            output.border = true;
            output.text = "Initializing...\n";
            addChild(output);
            
            
            if (ExternalInterface.available) {
                try {
                    output.appendText("Adding callback...\n");
                    ExternalInterface.addCallback("sendToActionScript", receivedFromJavaScript);
                    if (checkJavaScriptReady()) {
                        output.appendText("JavaScript is ready.\n");
                    } else {
                        output.appendText("JavaScript is not ready, creating timer.\n");
                        var readyTimer:Timer = new Timer(100, 0);
                        readyTimer.addEventListener(TimerEvent.TIMER, timerHandler);
                        readyTimer.start();
                    }
                } catch (error:SecurityError) {
                    output.appendText("A SecurityError occurred: " + error.message + "\n");
                } catch (error:Error) {
                    output.appendText("An Error occurred: " + error.message + "\n");
                }
            } else {
                output.appendText("External interface is not available for this container.");
            }
        }
        private function receivedFromJavaScript(value:String):void {
            output.appendText("JavaScript says: " + value + "\n");
        }
        private function checkJavaScriptReady():Boolean {
            var isReady:Boolean = ExternalInterface.call("isReady");
            return isReady;
        }
        private function timerHandler(event:TimerEvent):void {
            output.appendText("Checking JavaScript status...\n");
            var isReady:Boolean = checkJavaScriptReady();
            if (isReady) {
                output.appendText("JavaScript is ready.\n");
                output.appendText("ExternalInterface.objectID = " + ExternalInterface.objectID + "\n");
                Timer(event.target).stop();
            }
        }
        private function clickHandler(event:MouseEvent):void {
            if (ExternalInterface.available) {
                ExternalInterface.call("sendToJavaScript", input.text);
            }
        }
    }
}


A fim de testar o código ActionScript anterior, incorpore o arquivo SWF criado usando o seguinte modelo HTML:
 <!-- saved from url=(0014)about:internet -->
 <html lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>ExternalInterfaceExample</title>
 <script language="JavaScript">
     var jsReady = false;
     function isReady() {
         return jsReady;
     }
     function pageInit() {
         jsReady = true;
         document.forms["form1"].output.value += "\n" + "JavaScript is ready.\n";
     }
     function sendToActionScript(value) {
       document.getElementById("ExternalInterfaceExample").sendToActionScript(value);
     }
     function sendToJavaScript(value) {
         document.forms["form1"].output.value += "ActionScript says: " + value + "\n";
     }
 </script>
 </head>
 <body onload="pageInit();">
 
  <object id="ExternalInterfaceExample"  name="ExternalInterfaceExample" 
  type="application/x-shockwave-flash" data="ExternalInterfaceExample.swf" width="550" height="400">
    <param name="movie" value="ExternalInterfaceExample.swf"/>
    <param name="quality" value="high"/>
    <param name="allowscriptaccess" value="always"/>
    <a href="http://www.adobe.com/go/getflash">
        <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player"/>
    </a>
  </object>
 
     <form name="form1" onsubmit="return false;">
         <input type="text" name="input" value="" />
         <input type="button" value="Send" onclick="sendToActionScript(this.form.input.value);" /><br />
         <textarea cols="60" rows="20" name="output" readonly="true">Initializing...</textarea>
     </form>
 
 </body>
 </html>
 




[ X ]Por que inglês?
O conteúdo na Referência do ActionScript 3.0 aparece em inglês

Nem todas as partes da Referência do ActionScript 3.0 estão traduzidas em todos os idiomas. Quando um elemento de um idioma não está traduzido, ele é exibido em inglês. Por exemplo, a classe ga.controls.HelpBox não está traduzida em nenhum idioma. Por isso, na versão da referência em português do Brasil, a classe ga.controls.HelpBox é exibida em inglês.