Carga de contenido incorporado de archivos SWF importados en un dominio de seguridad
Flash Player 9 y posterior, Adobe AIR 1.0 y posterior
Cuando se carga un archivo SWF, se puede establecer el parámetro
context
del método
load()
del objeto Loader que se utiliza para cargar el archivo. Este parámetro es un objeto LoaderContext. Si se establece la propiedad
securityDomain
de este objeto LoaderContext como
Security.currentDomain
, Flash Player comprueba si hay un archivo de política URL en el servidor del archivo SWF cargado. Si hay un archivo de política y concede acceso al dominio del archivo SWF que realiza la carga, se puede cargar el archivo SWF como medios importados. De este modo, el archivo que realiza carga puede obtener acceso a los objetos de la biblioteca del archivo SWF.
Otra forma de que un archivo SWF pueda acceder a las clases de los archivos SWF cargados de otros entornos limitados de seguridad es hacer que el archivo SWF cargado llame al método
Security.allowDomain()
para conceder acceso al dominio del archivo SWF que realiza la llamada. Se puede añadir la llamada al método
Security.allowDomain()
al método constructor de la clase principal del archivo SWF cargado y luego hacer que el archivo SWF que realiza la carga añada un detector de eventos para responder al evento
init
distribuido por la propiedad
contentLoaderInfo
del objeto Loader. Cuando se distribuye este evento, el archivo SWF cargado ha llamado al método
Security.allowDomain()
en el método constructor y las clases del archivo SWF cargado están disponibles para el archivo SWF que realiza la carga. El archivo SWF de carga puede recuperar clases del archivo SWF cargado si llama a
Loader.contentLoaderInfo.applicationDomain.getDefinition()
o a Loader.contentLoaderInfo.applicationDomain.getQualifiedDefinitionNames()(Flash Player 11.3 y versiones posteriores; AIR 3.3 y versiones posteriores).
|
|
|