Referencia de ActionScript® 3.0 para la plataforma de Adobe® Flash®
Inicio  |  Ocultar lista de paquetes y clases |  Paquetes  |  Clases  |  Novedades  |  Índice  |  Apéndices  |  ¿Por qué hay texto en inglés?
Filtros: AIR 30.0 y versiones anteriores, Flash Player 30.0 y versiones anteriores, Flash Lite 4
Flex 4.6 y versiones anteriores, Flash Pro CS6 y versiones anteriores
Ocultar filtros
flash.net 

LocalConnection  - AS3

Paquetesx

Nivel 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 del lenguaje

Constantes globales
Funciones globales
Operadores
Sentencias, palabras clave y directivas
Tipos especiales

Apéndices

Novedades
Errores del compilador
Advertencias del compilador
Errores en tiempo de ejecución
Migración a ActionScript 3
Conjuntos de caracteres admitidos
Solo etiquetas MXML
Elementos Motion XML
Etiquetas de texto temporizado
Lista de elementos desfasados
Constantes de implementación de accesibilidad
Cómo utilizar ejemplos de ActionScript
Avisos legales
Paqueteflash.net
Clasepublic class LocalConnection
HerenciaLocalConnection Inheritance EventDispatcher Inheritance Object

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

La clase LocalConnection permite crear un objeto LocalConnection que pueda invocar un método en otro objeto LocalConnection. La comunicación puede producirse:
  • En un único archivo SWF
  • Entre varios archivos SFW
  • Entre contenido (basado en SWF o en HTML) de aplicaciones de AIR
  • Entre contenido (basado en SWF o en HTML) de una aplicación de AIR y contenido SWF ejecutado en un navegador

Compatibilidad con perfil de AIR: esta característica se admite en todos los sistemas operativos de escritorio y en todos dispositivos de AIR para TV, pero no en dispositivos móviles. Puede comprobar la compatibilidad en tiempo de ejecución mediante la propiedad LocalConnection.isSupported. Consulte Compatibilidad con perfil de AIR para obtener información sobre la compatibilidad de la API con varios perfiles.

Nota: los dispositivos de AIR para TV admiten comunicación sólo entre contenido basado en SWF en aplicaciones de AIR.

Las conexiones locales permiten este tipo de comunicación entre archivos SWF sin necesidad de utilizar fscommand() o JavaScript. Los objetos LocalConnection sólo pueden comunicarse entre archivos que se ejecuten en el mismo equipo cliente, aunque pueden estar ejecutándose en diferentes aplicaciones: por ejemplo, un archivo que se esté ejecutando en un navegador y un archivo SWF que se esté ejecutando en Adobe AIR.

Los objetos LocalConnection creados con ActionScript 3.0 se pueden comunicar con objetos LocalConnection creados con ActionScript 1.0 ó 2.0. También al contrario: los objetos LocalConnection creados con ActionScript 1.0 ó 2.0 se pueden comunicar con objetos LocalConnection creados con ActionScript 3.0. Flash Player maneja automáticamente esta comunicación entre objetos LocalConnection de distintas versiones.

Hay tres formas de añadir métodos callback a los objetos LocalConnection:

  • Crear una subclase de la clase LocalConnection y añadir métodos.
  • Establecer la propiedad LocalConnection.client en un objeto que implemente los métodos.
  • Crear una clase dinámica que amplíe LocalConnection y asociar métodos de forma dinámica.

Para comprender cómo se utilizan los objetos LocalConnection en la implementación de la comunicación entre dos archivos, resulta útil identificar los comandos empleados en cada archivo. Un archivo recibe el nombre de archivo receptor; se trata del archivo que contiene el método que se va a invocar. El archivo receptor debe contener otro objeto LocalConnection y realizar una llamada al método connect(). El otro archivo recibe el nombre de archivo emisor; se trata del archivo que invoca el método. El archivo emisor debe contener un objeto LocalConnection y una llamada al método send().

El uso de send() y connect() varía si los archivos están en el mismo dominio, en dominios distintos con nombres de dominio predecibles o en dominios diferentes con nombres de dominio impredecibles o dinámicos. En los párrafos siguientes se explican los tres casos distintos y se proporcionan muestras de código para cada uno.

Mismo dominio. Es la forma más sencilla de utilizar un objeto LocalConnection para permitir la comunicación únicamente entre objetos LocalConnection ubicados en el mismo dominio, ya que, de forma predeterminada, se permite la comunicación entre dominios iguales. Si se comunican dos archivos del mismo dominio, no es necesario implementar ninguna medida de seguridad especial: simplemente se transfiere el mismo valor para el parámetro connectionName tanto al método connect() como al método send():

Carga desde el mismo dominio

// receivingLC is in http://www.domain.com/receiving.swf
receivingLC.connect('myConnection');

// sendingLC is in http://www.domain.com/sending.swf
// myMethod() is defined in sending.swf
sendingLC.send('myConnection', 'myMethod');

Dominios distintos con nombres de dominio predecibles. Cuando se comunican dos archivos SWF de dominios distintos, es necesario permitir la comunicación entre ellos llamando al método allowDomain(). También es necesario calificar el nombre de la conexión en el método send() con el nombre del dominio del objeto LocalConnection receptor:

Carga desde dominios distintos

// receivingLC is in http://www.domain.com/receiving.swf
receivingLC.allowDomain('www.anotherdomain.com');
receivingLC.connect('myConnection');

// sendingLC is in http://www.anotherdomain.com/sending.swf
sendingLC.send('www.domain.com:myConnection', 'myMethod');

Dominios distintos con nombres de dominio no predecibles. En ocasiones, es probable que quiera que el archivo con el objeto LocalConnection receptor presente una mayor portabilidad entre dominios. Para evitar tener que especificar el nombre del dominio en el método send(), pero sí indicar que los objetos LocalConnection emisores y receptores no se encuentran en el mismo dominio, preceda el nombre de la conexión con un carácter de subrayado (_) en las llamadas a connect() y a send(). Para permitir la comunicación entre dos dominios, llame al método allowDomain() y transfiera los dominios para los que desee permitir llamadas de LocalConnection. También puede transferir el argumento comodín (*) para permitir llamadas desde todos los dominios:

Carga desde nombres de dominios desconocidos

// receivingLC is in http://www.domain.com/receiving.swf
receivingLC.allowDomain('*');
receivingLC.connect('_myConnection');

// sendingLC is in http://www.anotherdomain.com/sending.swf
sendingLC.send('_myConnection', 'myMethod');

De Flash Player a una aplicación de AIR. Un objeto LocalConnection creado en el entorno limitado de la aplicación de AIR usa una cadena como prefijo de conexión en lugar de un nombre de dominio. Esta cadena tiene la forma: app#appID.pubID donde appID es el ID de aplicación y pubID es el ID del editor de la aplicación. (Sólo se debe incluir ID de editor si la aplicación de AIR utiliza un ID de editor.) Por ejemplo, si una aplicación de AIR tiene un ID de aplicación "com.example" y ningún ID de editor, puede utilizar: app#com.example:myConnection como cadena de conexión local. La aplicación de AIR también debe llamar al método allowDomain(), transfiriendo el dominio del archivo SWF que realiza la llamada de origen:

Conexión de Flash Player a AIR

// receivingLC is an AIR application with app ID = com.example (and no publisher ID)
receivingLC.allowDomain('www.domain.com');
receivingLC.connect('myConnection');

// sendingLC is in http://www.domain.com/sending.swf
sendingLC.send('app#com.example:myConnection', 'myMethod');

Nota: si una aplicación de AIR carga un archivo SWF fuera del entorno limitado de la aplicación de AIR, las reglas para establecer una conexión local con ese SWF son las mismas que las reglas para establecer una conexión con un archivo SWF ejecutado en Flash Player.

De una aplicación de AIR a Flash Player. Cuando una aplicación de AIR se comunica con un SWF ejecutado en el motor de ejecución de Flash Player, es necesario permitir la comunicación entre los dos llamando al método allowDomain() y transfiriendo el prefijo de conexión de la aplicación de AIR. Por ejemplo, si una aplicación de AIR tiene un ID de aplicación "com.example" y ningún ID de editor, podría transferir la cadena: app#com.example al método allowDomain(). También es necesario calificar el nombre de la conexión en el método send() con el nombre del dominio del objeto LocalConnection receptor (use "localhost" como dominio para archivos SWF cargados desde el sistema de archivos local):

Comunicación de AIR a Flash Player

// receivingLC is in http://www.domain.com/receiving.swf
receivingLC.allowDomain('app#com.example');
receivingLC.connect('myConnection');

// sendingLC is an AIR application with app ID = com.example (and no publisher ID)
sendingLC.send('www.domain.com:myConnection', 'myMethod');

Entre aplicaciones de AIR. Para comunicarse entre dos aplicaciones de AIR, es necesario permitir la comunicación entre ambas llamando al método allowDomain() y transferir el prefijo de conexión de la aplicación de AIR de envío. Por ejemplo, si una aplicación de envío tiene un ID de aplicación "com.example" y ningún ID de editor, podría transferir la cadena: app#com.example al método allowDomain() de la aplicación receptora. También es necesario calificar el nombre de la conexión en el método send() con el prefijo de conexión del objeto LocalConnection receptor:

Comunicación AIR-AIR

// receivingLC is an AIR application with app ID = com.sample (and no publisher ID)
receivingLC.allowDomain('app#com.example');
receivingLC.connect('myConnection');

// sendingLC is an AIR application with app ID = com.example (and no publisher ID)
sendingLC.send('app#com.sample:myConnection', 'myMethod');

Se pueden utilizar objetos LocalConnection para enviar y recibir datos en un solo archivo, pero no suele ser lo habitual.

Para más información sobre los métodos send() y connect(), consulte la descripción del parámetro connectionName en las entradas LocalConnection.send() y LocalConnection.connect(). Asimismo, consulte las entradas allowDomain() y domain.

Ver los ejemplos

Elementos de API relacionados



Propiedades públicas
 PropiedadDefinido por
  client : Object
Indica el objeto en el que se invocan los métodos callback.
LocalConnection
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
  domain : String
[solo lectura] Una cadena que representa el dominio de la ubicación del archivo actual.
LocalConnection
  isPerUser : Boolean
Indica si el objeto LocalConnection está limitado al usuario actual (true) o si todos los usuarios pueden acceder globalmente en el equipo (false).
LocalConnection
  isSupported : Boolean
[estática] [solo lectura] La propiedad isSupported se establece en true si la clase LocalConnection se admite en la plataforma actual; en caso contrario, se establece en false.
LocalConnection
Métodos públicos
 MétodoDefinido por
  
Crea un objeto LocalConnection.
LocalConnection
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un objeto de detector de eventos con un objeto EventDispatcher, de modo que el detector reciba la notificación de un evento.
EventDispatcher
  
Especifica uno o varios dominios que pueden enviar las llamadas a LocalConnection a esta instancia de LocalConnection.
LocalConnection
  
Especifica uno o varios dominios que pueden enviar las llamadas a LocalConnection a este objeto LocalConnection.
LocalConnection
  
Cierra (desconecta) un objeto LocalConnection.
LocalConnection
  
connect(connectionName:String):void
Prepara un objeto LocalConnection para recibir comandos que se envían desde un comando send() (desde el objeto LocalConnection emisor).
LocalConnection
 Inherited
Distribuye un evento en el flujo del evento.
EventDispatcher
 Inherited
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento.
EventDispatcher
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Elimina un detector del objeto EventDispatcher.
EventDispatcher
  
send(connectionName:String, methodName:String, ... arguments):void
Invoca el método denominado methodName en una conexión abierta con el método connect(connectionName) (en el objeto LocalConnection receptor).
LocalConnection
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
 Inherited
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional.
Object
 Inherited
Devuelve la representación de cadena del objeto especificado.
Object
 Inherited
Devuelve el valor simple del objeto especificado.
Object
 Inherited
Comprueba si hay registrado un detector de eventos con este objeto EventDispatcher o con cualquiera de sus ascendientes para el tipo de evento concreto.
EventDispatcher
Eventos
 Evento Resumen Definido por
 Inherited[evento broadcast] Se distribuye cuando Flash Player o AIR pasan a estar activos.EventDispatcher
  Se distribuye cuando se emite una excepción de forma asíncrona, es decir, desde un código asíncrono nativo.LocalConnection
 Inherited[evento broadcast] Se distribuye cuando Flash Player o de AIR pasan a estar inactivos.EventDispatcher
  Se distribuye si una llamada a LocalConnection.send() intenta enviar datos a un entorno limitado de seguridad distinto.LocalConnection
  Se distribuye cuando un objeto LocalConnection informa sobre su estado.LocalConnection
Información sobre propiedades

client

propiedad
client:Object

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Indica el objeto en el que se invocan los métodos callback. El objeto predeterminado es this (la conexión local que se está creando). Se puede establecer la propiedad client en otro objeto y los métodos callback se invocarán en dicho objeto.



Implementación
    public function get client():Object
    public function set client(value:Object):void

Emite
TypeError — La propiedad client debe establecerse en un objeto que no tenga valor null.

domain

propiedad 
domain:String  [solo lectura]

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Una cadena que representa el dominio de la ubicación del archivo actual.

En el contenido ejecutado en el entorno limitado de seguridad de la aplicación de Adobe AIR (contenido instalado con la aplicación de AIR), el motor de ejecución utiliza la cadena app# seguida del ID de la aplicación de AIR (definido en el archivo descriptor de la aplicación) en el lugar del superdominio. Por ejemplo, connectionName en una aplicación con com.example.air.MyApp como ID de aplicación, connectionName se resuelve como "app#com.example.air.MyApp:connectionName".

En archivos SWF publicados para Flash Player 9 o posterior, la cadena devuelta es el dominio exacto del archivo, incluidos los subdominios. Por ejemplo, si el archivo está situado en www.adobe.com, este comando devolverá "www.adobe.com".

Si el archivo actual es un archivo local que reside en el equipo cliente ejecutado en Flash Player, este comando devolverá "localhost".

Esta propiedad se utiliza habitualmente incluyendo el nombre del dominio del objeto LocalConnection emisor como parámetro del método que tiene previsto invocar en el objeto LocalConnection receptor o para su uso con LocalConnection.allowDomain() para aceptar comandos de un dominio determinado. Si desea permitir la comunicación sólo entre objetos LocalConnection que se encuentren en el mismo dominio, probablemente no necesite utilizar esta propiedad.



Implementación
    public function get domain():String

Elementos de API relacionados

isPerUser

propiedad 
isPerUser:Boolean

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: Flash Player 10.0.32, AIR 1.5.2

Indica si el objeto LocalConnection está limitado al usuario actual (true) o si todos los usuarios pueden acceder globalmente en el equipo (false). Esta propiedad solo afecta al contenido que se ejecuta en Mac OS X; en otras plataformas, este parámetro se omite. Las conexiones en sistemas operativos Windows y Linux siempre se realizan por usuario independiente.

En Flash Player 10.0.22 y versiones anteriores, y en AIR 1.5.1 y versiones anteriores, todos los objetos LocalConnection en Mac OS X tienen un ámbito global. Establezca esta propiedad en true a menos que necesite para mantener la compatibilidad con versiones anteriores. En versiones futuras, el valor predeterminado de esta propiedad puede cambiar a true.

El valor predeterminado es false.



Implementación
    public function get isPerUser():Boolean
    public function set isPerUser(value:Boolean):void

isSupported

propiedad 
isSupported:Boolean  [solo lectura]

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: Flash Player 10.1, AIR 2

La propiedad isSupported se establece en true si la clase LocalConnection se admite en la plataforma actual; en caso contrario, se establece en false.



Implementación
    public static function get isSupported():Boolean
Información sobre constructores

LocalConnection

()Información sobre
public function LocalConnection()

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Crea un objeto LocalConnection. Los objetos LocalConnection se pueden utilizar para habilitar la comunicación entre distintos archivos que se ejecuten en el mismo equipo cliente.

Elementos de API relacionados

Información sobre métodos

allowDomain

()método
public function allowDomain(... domains):void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Especifica uno o varios dominios que pueden enviar las llamadas a LocalConnection a esta instancia de LocalConnection.

Este método no se puede utilizar para hacer que los archivos alojados mediante un protocolo seguro (HTTPS) permitan el acceso desde los archivos alojados en protocolos no seguros; para ello, se deberá utilizar el método allowInsecureDomain().

Es posible que desee utilizar este método para que un archivo secundario de un dominio diferente pueda hacer llamadas LocalConnection al archivo principal, cuando no conoce el dominio final del que proviene el archivo secundario. Por ejemplo, esto puede ocurrir cuando se utilizan redirecciones de reparto de carga o servidores de terceros. En este caso, puede utilizar la propiedad url del objeto LoaderInfo usado con la carga, para obtener el dominio que se utilizará con el método allowDomain(). Por ejemplo, si utiliza un objeto Loader para cargar un archivo secundario, una vez que se haya cargado el archivo, puede comprobar la propiedad contentLoaderInfo.url del objeto Loader y analizar el dominio fuera de la cadena URL completa. Si lo hace, asegúrese de que espera a que se cargue el archivo, ya que la propiedad contentLoaderInfo.url no dispondrá de su valor final correcto hasta que el archivo esté completamente cargado.

También puede darse la situación contraria: puede crear un archivo secundario que quiera aceptar llamadas LocalConnection de su archivo principal pero que no conozca el dominio de su archivo principal. En este caso, para implementar este método, compruebe si el argumento de dominio coincide con el dominio de la propiedad loaderInfo.url en el archivo que se ha cargado. Una vez más, deberá analizar el dominio fuera de la URL completa de loaderInfo.url. En este caso, no tendrá que esperar a que se cargue el archivo principal; el archivo principal ya estará cargado en el momento en que se cargue el archivo secundario.

Cuando utilice este método, tenga en cuenta el modelo de seguridad de Flash Player. De forma predeterminada, un objeto LocalConnection está asociado con el entorno limitado del archivo que lo creó y no se admiten llamadas de varios dominios a objetos LocalConnection a menos que se haya llamado al método LocalConnection.allowDomain() en el archivo receptor. Sin embargo, en Adobe AIR, el contenido del entorno limitado de seguridad de la aplicación (contenido instalado con la aplicación de AIR) no está limitado por estas restricciones de seguridad.

Para obtener más información, consulte el tema del Centro de desarrollo de Flash Player Seguridad.

Nota: el método allowDomain() ha cambiado desde ActionScript 1.0 y 2.0. En dichas versiones anteriores, allowDomain era un método callback que se implementaba. En ActionScript 3.0, allowDomain() es un método incorporado de LocalConnection que puede recibir llamadas. Con este cambio, el funcionamiento de allowDomain() es muy similar al de flash.system.Security.allowDomain().

Parámetros

... domains — Una o varias cadenas que dan nombre a los dominios en los que se quiere permitir la recepción de llamadas LocalConnection. Este parámetro tiene dos casos especiales:
  • Puede especificar un carácter comodín "*" para permitir llamadas desde todos los dominios.
  • Puede especificar la cadena "localhost" para permitir llamadas a este archivo desde otros archivos instalados localmente. Flash Player 8 introdujo restricciones de seguridad en los archivos locales. De forma predeterminada, un archivo SWF ejecutado en Flash Player al que se le permite acceder a Internet no puede tener también acceso al sistema de archivos local. En Flash Player, si especifica "localhost", cualquier archivo SWF local podrá acceder a este archivo SWF.


Emite
ArgumentError — Todos los parámetros especificados no deben ser nulos.

Elementos de API relacionados

allowInsecureDomain

()método 
public function allowInsecureDomain(... domains):void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Especifica uno o varios dominios que pueden enviar las llamadas a LocalConnection a este objeto LocalConnection.

El funcionamiento del método allowInsecureDomain() es exactamente igual que el del método allowDomain(), con la excepción de que el método allowInsecureDomain() también permite que los archivos que no proceden de HTTPS puedan enviar llamadas LocalConnection a archivos SWF que sí proceden de HTTPS. Esta diferencia sólo es importante si se llama al método allowInsecureDomain() desde un archivo cargado con HTTPS. Debe llamar al método allowInsecureDomain() aunque atraviese una zona no HTTPS/HTTPS dentro del mismo dominio; de forma predeterminada, las llamadas LocalConnection nunca están permitidas desde archivos que no procedan de HTTPS a archivos HTTPS, incluso si se encuentran en el mismo dominio.

No se recomienda llamar a allowInsecureDomain(), ya que podría poner en riesgo la seguridad que ofrece HTTPS. Si carga un archivo mediante HTTPS, puede tener la seguridad razonable de que dicho archivo no se modificará durante su envío por la red. Si permite que un archivo que no procede de HTTPS realice llamadas LocalConnection al archivo HTTPS, estará aceptando llamadas de un archivo que podría, en realidad, haberse modificado durante su envío. Esto suele requerir una mayor vigilancia, ya que no se puede confiar en la autenticidad de las llamadas LocalConnection que llegan al archivo HTTPS.

De manera predeterminada, sólo los archivos alojados mediante un protocolo HTTPS pueden acceder a otros archivos alojados mediante el protocolo HTTPS. Esta implementación mantiene la integridad que ofrece el protocolo HTTPS.

No es recomendable utilizar este método para sustituir el comportamiento predeterminado, ya que pone en riesgo la seguridad de HTTPS. Sin embargo, es posible que tenga que hacerlo, por ejemplo, si necesita permitir el acceso a archivos HTTPS SWF publicados para Flash Player 9 o posterior desde archivos HTTP SWF publicados para Flash Player 6 o versiones anteriores.

Para obtener más información, consulte el tema del Centro de desarrollo de Flash Player Seguridad.

Parámetros

... domains — Una o varias cadenas que dan nombre a los dominios en los que se quiere permitir la recepción de llamadas LocalConnection. Hay dos casos especiales para este parámetro:
  • Puede especificar el carácter comodín "*" para permitir llamadas desde todos los dominios. Especificar "*" no incluye a host locales.
  • Puede especificar la cadena "localhost" para permitir llamadas a este archivo SWF desde otros archivos SWF instalados localmente. Flash Player 8 introdujo restricciones de seguridad en los archivos SWF locales. Un archivo SWF al que se le permite acceder a Internet no puede tener también acceso al sistema de archivos local. Si especifica "localhost", cualquier archivo SWF local podrá acceder a este archivos SWF. No olvide que también debe designar el archivo SWF que realiza la llamada como un archivo SWF local con acceso a la red en el momento de su creación.


Emite
ArgumentError — Todos los parámetros especificados no deben ser nulos.

Elementos de API relacionados

close

()método 
public function close():void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Cierra (desconecta) un objeto LocalConnection. Envíe este comando cuando ya no desee que el objeto acepte comandos (por ejemplo, cuando desee enviar un comando connect() utilizando el mismo parámetro connectionName en otro archivo SWF).


Emite
ArgumentError — La instancia de LocalConnection no está conectada, por lo que no es posible cerrarla.

Elementos de API relacionados

connect

()método 
public function connect(connectionName:String):void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Prepara un objeto LocalConnection para recibir comandos de un comando send() (denominado objeto LocalConnection emisor). El objeto utilizado con el método connect() se conoce como objeto LocalConnection receptor. Los objetos receptor y emisor deben estar en ejecución en el mismo equipo cliente.

Para evitar una situación precipitada, defina los métodos asociados al objeto LocalConnection receptor antes de llamar a este método, tal como se indica en el ejemplo de la clase LocalConnection.

De forma predeterminada, el argumento connectionName se resuelve como un valor "superdomain:connectionName", donde superdomain es el superdominio del archivo que contiene el comando connect(). Por ejemplo, si el archivo que contiene el objeto LocalConnection receptor está ubicado en www.someDomain.com, connectionName se resuelve como "someDomain.com:connectionName". (Si un archivo ejecutado en Flash Player está situado en un equipo cliente, el valor asignado a superdomain es "localhost").

En el contenido ejecutado en el entorno limitado de seguridad de la aplicación de Adobe AIR (contenido instalado con la aplicación de AIR), el motor de ejecución utiliza la cadena app# seguida del ID de la aplicación de AIR (definido en el archivo descriptor de la aplicación) en el lugar del superdominio. Por ejemplo, connectionName en una aplicación con com.example.air.MyApp como ID de aplicación, connectionName se resuelve como "app#com.example.air.MyApp:connectionName".

Asimismo, de forma predeterminada, Flash Player permite que el objeto LocalConnection receptor acepte solamente comandos de objetos LocalConnection emisores cuyo nombre de conexión también se resuelva en el valor "superdomain:connectionName". De esta forma, Flash Player facilita la comunicación entre archivos situados en el mismo dominio.

Sí sólo va a implementar la comunicación entre archivos del mismo dominio, especifique una cadena para connectionName que no comience por un carácter de subrayado (_) y que no especifique un nombre de dominio (por ejemplo, "myDomain:connectionName"). Utilice la misma cadena en el método connect(connectionName).

Si va a implementar comunicación entre archivos de diferentes dominios, la especificación de una cadena para connectionName que comience por un carácter de subrayado (_) permitirá que el archivo que tiene el objeto LocalConnection receptor presente una mayor portabilidad entre dominios. Estos son los dos casos posibles:

  • Si la cadena para connectionName no comienza por un carácter de subrayado (_), se añade un prefijo con el superdominio y dos puntos (por ejemplo, "myDomain:connectionName"). Aunque esto garantiza que la conexión no entre en conflicto con conexiones de otros dominios que tengan el mismo nombre, los objetos LocalConnection emisores deben especificar este superdominio (por ejemplo, "myDomain:connectionName"). Si el archivo que contiene el objeto LocalConnection receptor se traslada a otro dominio, el reproductor cambiará el prefijo para reflejar el nuevo superdominio (por ejemplo, "anotherDomain:connectionName"). Sería necesario editar manualmente todos los objetos LocalConnection emisores para que apuntaran al nuevo superdominio.
  • Si la cadena de connectionName comienza por un carácter de subrayado (por ejemplo, "_connectionName"), no se añade ningún prefijo a la cadena. Esto significa que los objetos LocalConnection receptores y emisores utilizarán idénticas cadenas para connectionName. Si el objeto receptor utiliza allowDomain() para especificar que se acepten las conexiones de cualquier dominio, el que contiene el objeto LocalConnection receptor podrá trasladarse a otro dominio sin modificar ningún objeto LocalConnection emisor.

Para más información, consulte la descripción de la presentación general de la clase y la descripción de connectionName en send(). Consulte también las entradas allowDomain() y domain.

Nota: los dos puntos se utilizan como caracteres especiales que separan el superdominio de la cadena connectionName. La cadena de connectionName no puede incluir dos puntos.

Cuando utilice este método, tenga en cuenta el modelo de seguridad de Flash Player. De forma predeterminada, un objeto LocalConnection está asociado con el entorno limitado del archivo que lo creó y no se admiten llamadas de varios dominios a objetos LocalConnection a menos que se haya llamado al método LocalConnection.allowDomain() en el archivo receptor. Asimismo, se puede impedir que un archivo utilice este método si define el parámetro allowNetworking de las etiquetas object y embed de la página HTML que aloja el contenido SWF.Sin embargo, en Adobe AIR, el contenido del entorno limitado de seguridad de la aplicación (contenido instalado con la aplicación de AIR) no está limitado por estas restricciones de seguridad.

Para obtener más información, consulte el tema del Centro de desarrollo de Flash Player Seguridad.

Parámetros

connectionName:String — Una cadena que se corresponde con el nombre de conexión especificado en el comando send() que desea comunicarse con el objeto LocalConnection receptor.


Emite
TypeError — El valor transferido al parámetro connectionName no puede ser null.
 
ArgumentError — Este error puede producirse por tres motivos: 1) El valor de cadena transferido al parámetro connectionName es null. Transfiera un valor que no sea null. 2) El valor transferido al parámetro connectionName contiene dos puntos (:). Los dos puntos son caracteres especiales empleados para separar el superdominio de la cadena connectionName en el método send(), no en el método connect(). 3) La instancia de LocalConnection ya está conectada.

Elementos de API relacionados

send

()método 
public function send(connectionName:String, methodName:String, ... arguments):void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Invoca el método denominado methodName en una conexión abierta con el método connect(connectionName) (el objeto LocalConnection receptor). El objeto utilizado con el método send() se conoce como objeto LocalConnection emisor. Los archivos SWF que contienen los objetos emisor y receptor deben estar en ejecución en el mismo equipo cliente.

Existe un límite de 40 kilobytes para la cantidad de datos que puede pasar en forma de parámetros a este comando. Si send() emite un ArgumentError pero la sintaxis es correcta, intente dividir las solicitudes de send() en varios comandos, cada uno con menos de 40 Kb de datos.

Tal como se ha visto en la entrada connect(), el superdominio actual se agrega a connectionName de forma predeterminada. Si está implementando la comunicación entre diferentes dominios, debe definir connectionName en los objetos LocalConnection emisor y receptor de manera que no añadir el superdominio actual a connectionName. Puede hacerlo de una de las dos formas siguientes:

  • Utilice un carácter de subrayado (_) al comienzo de connectionName en los objetos LocalConnection emisor y receptor. En el archivo que contiene el objeto receptor, utilice LocalConnection.allowDomain() para especificar que se acepten las conexiones procedentes de cualquier dominio. Esta implementación le permite almacenar los archivos emisor y receptor en cualquier dominio.
  • Incluya el superdominio en connectionName en el objeto LocalConnection emisor (por ejemplo, myDomain.com:myConnectionName). En el objeto receptor, utilice LocalConnection.allowDomain() para especificar que se acepten las conexiones desde el superdominio especificado (en este caso, myDomain.com) o que se acepten las conexiones desde cualquier dominio.

Nota: no puede especificar un superdominio en connectionName en el objeto LocalConnection receptor (sólo puede hacerlo en el objeto LocalConnection emisor).

Cuando utilice este método, tenga en cuenta el modelo de seguridad de Flash Player. De forma predeterminada, un objeto LocalConnection está asociado con el entorno limitado del archivo que lo creó y no se admiten llamadas de varios dominios a objetos LocalConnection a menos que se haya llamado al método LocalConnection.allowDomain() en el archivo receptor. En contenido SWF ejecutado en el navegador, se puede impedir que un archivo utilice este método si define el parámetro allowNetworking de las etiquetas object y embed de la página HTML que aloja el contenido SWF. Sin embargo, en Adobe AIR, el contenido del entorno limitado de seguridad de la aplicación (contenido instalado con la aplicación de AIR) no está limitado por estas restricciones de seguridad.

Para obtener más información, consulte el tema del Centro de desarrollo de Flash Player Seguridad.

Parámetros

connectionName:String — Se corresponde con el nombre de conexión especificado en el comando connect() que desea comunicarse con el objeto LocalConnection emisor.
 
methodName:String — El nombre del método que se invoca en el objeto receptor LocalConnection. Los siguientes nombres de método provocan que el comando falle: send, connect, close, allowDomain, allowInsecureDomain, client y domain.
 
... arguments — Parámetros opcionales adicionales que se deben transferir al método especificado.


Eventos
securityError:SecurityErrorEventLocalConnection.send() intentó comunicarse con un archivo SWF desde un entorno limitado de seguridad al que el nodo que realiza la llamada no tiene acceso. Puede solucionar este problema en la implementación del receptor de LocalConnection.allowDomain().
 
status:StatusEvent — Si el valor de la propiedad level es "status", la llamada se realizó correctamente; si el valor es "error", se produjo un error en la llamada. Se pueden producir errores en la llamada si el archivo SWF receptor rechaza la conexión.

Emite
TypeError — El valor de connectionName o de methodName es null. Transfiera a estos parámetros valores que no sean null.
 
ArgumentError — Este error puede producirse por uno de los motivos siguientes: 1) El valor de connectionName o de methodName es una cadena vacía. Transfiera a estos parámetros cadenas válidas. 2) El método especificado en methodName está restringido. 3) El mensaje serializado que se está enviando es demasiado grande (más de 40 K).

Elementos de API relacionados

Información sobre eventos

asyncError

Evento
Tipo de objeto de evento: flash.events.AsyncErrorEvent
propiedad AsyncErrorEvent.type = flash.events.AsyncErrorEvent.ASYNC_ERROR

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Se distribuye cuando se emite una excepción de forma asíncrona, es decir, desde un código asíncrono nativo.

La constante AsyncErrorEvent.ASYNC_ERROR define el valor de la propiedad type de un objeto de evento asyncError.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetObjeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetObjeto que distribuye el evento.
errorEl error que desencadenó el evento.

securityError

Evento  
Tipo de objeto de evento: flash.events.SecurityErrorEvent
propiedad SecurityErrorEvent.type = flash.events.SecurityErrorEvent.SECURITY_ERROR

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Se distribuye si una llamada a LocalConnection.send() intenta enviar datos a un entorno limitado de seguridad distinto.

La constante SecurityErrorEvent.SECURITY_ERROR define el valor de la propiedad type de un objeto de evento securityError.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetObjeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetEl objeto de red que informa sobre le error de seguridad.
textTexto que se mostrará como mensaje de error.

Elementos de API relacionados

status

Evento  
Tipo de objeto de evento: flash.events.StatusEvent
propiedad StatusEvent.type = flash.events.StatusEvent.STATUS

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Se distribuye cuando un objeto LocalConnection informa sobre su estado. Si la llamada LocalConnection.send() se realiza correctamente, el valor de la propiedad level del objeto de evento status es "status"; si se produce un error en la llamada, la propiedad level es "error". Si el archivo receptor rechaza la conexión, la llamada podría producir un error y no notificarlo al archivo emisor.

Define el valor de la propiedad type de un objeto de evento status.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
codeDescripción del estado del objeto.
currentTargetObjeto que procesa de forma activa el objeto de evento con un detector de eventos.
levelLa categoría del mensaje, por ejemplo, "status", "warning" o "error".
targetEl objeto que informa sobre su estado.

Elementos de API relacionados

LocalConnectionSenderExample.as

Este ejemplo consta de dos clases ActionScript que deben compilarse en dos archivos SWF independientes:

En el archivo SWF LocalConnectionSenderExample, se crea una instancia de LocalConnection y, al pulsar el botón, se utiliza el método call() para llamar al método lcHandler del archivo SWF con la conexión denominada "myConnection" y se transfiere el contenido de TextField como un parámetro.

En el archivo SWF LocalConnectionReceiverExample, se crea una instancia de LocalConnection y se llama al método connect() para designar este archivo SWF como destinatario de los mensajes dirigidos a la conexión denominada "myConnection". Además, esta clase contiene un método público llamado lcHandler(); este método es al que llama el archivo SWF LocalConnectionSenderExample. Cuando realiza la llamada, el texto transferido como parámetro se añade a TextField en el escenario.

Nota: para probar este ejemplo, los dos archivos SWF deben estar cargados en el mismo equipo al mismo tiempo.

// Code in LocalConnectionSenderExample.as
package {
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.net.LocalConnection;
    import flash.text.TextField;
    import flash.text.TextFieldType;
    import flash.events.StatusEvent;
    import flash.text.TextFieldAutoSize;

    public class LocalConnectionSenderExample extends Sprite {
        private var conn:LocalConnection;
        
        // UI elements
        private var messageLabel:TextField;
        private var message:TextField;
        private var sendBtn:Sprite;
        
        public function LocalConnectionSenderExample() {
            buildUI();
            sendBtn.addEventListener(MouseEvent.CLICK, sendMessage);
            conn = new LocalConnection();
            conn.addEventListener(StatusEvent.STATUS, onStatus);
        }
        
        private function sendMessage(event:MouseEvent):void {
            conn.send("myConnection", "lcHandler", message.text);
        }
        
        private function onStatus(event:StatusEvent):void {
            switch (event.level) {
                case "status":
                    trace("LocalConnection.send() succeeded");
                    break;
                case "error":
                    trace("LocalConnection.send() failed");
                    break;
            }
        }
        
        private function buildUI():void {
            const hPadding:uint = 5;
            // messageLabel
            messageLabel = new TextField();
            messageLabel.x = 10;
            messageLabel.y = 10;
            messageLabel.text = "Text to send:";
            messageLabel.autoSize = TextFieldAutoSize.LEFT;
            addChild(messageLabel);
            
            // message
            message = new TextField();
            message.x = messageLabel.x + messageLabel.width + hPadding;
            message.y = 10;
            message.width = 120;
            message.height = 20;
            message.background = true;
            message.border = true;
            message.type = TextFieldType.INPUT;
            addChild(message);
            
            // sendBtn
            sendBtn = new Sprite();
            sendBtn.x = message.x + message.width + hPadding;
            sendBtn.y = 10;
            var sendLbl:TextField = new TextField();
            sendLbl.x = 1 + hPadding;
            sendLbl.y = 1;
            sendLbl.selectable = false;
            sendLbl.autoSize = TextFieldAutoSize.LEFT;
            sendLbl.text = "Send";
            sendBtn.addChild(sendLbl);
            sendBtn.graphics.lineStyle(1);
            sendBtn.graphics.beginFill(0xcccccc);
            sendBtn.graphics.drawRoundRect(0, 0, (sendLbl.width + 2 + hPadding + hPadding), (sendLbl.height + 2), 5, 5);
            sendBtn.graphics.endFill();
            addChild(sendBtn);
        }
    }
}
LocalConnectionReceiverExample.as

// Code in LocalConnectionReceiverExample.as
package {
    import flash.display.Sprite;
    import flash.net.LocalConnection;
    import flash.text.TextField;

    public class LocalConnectionReceiverExample extends Sprite {
        private var conn:LocalConnection;
        private var output:TextField;
        
        public function LocalConnectionReceiverExample()     {
            buildUI();
            
            conn = new LocalConnection();
            conn.client = this;
            try {
                conn.connect("myConnection");
            } catch (error:ArgumentError) {
                trace("Can't connect...the connection name is already being used by another SWF");
            }
        }
        
        public function lcHandler(msg:String):void {
            output.appendText(msg + "\n");
        }
        
        private function buildUI():void {
            output = new TextField();
            output.background = true;
            output.border = true;
            output.wordWrap = true;
            addChild(output);
        }
    }
}




[ X ]¿Por qué hay texto en inglés?
Cierto contenido de la Referencia de ActionScript 3.0 se muestra en inglés

No todo el contenido de la Referencia de ActionScript 3.0 se traduce a todos los idiomas. Si un elemento del lenguaje no se traduce, aparecerá en inglés. Por ejemplo, la clase ga.controls.HelpBox no está traducida en ningún idioma. Por lo tanto, en la versión en español de la referencia, la clase ga.controls.HelpBox aparecerá en inglés.