Laden von eingebetteten Inhalten aus SWF-Dateien, die in eine Sicherheitsdomäne importiert wurden
Flash Player 9 und höher, Adobe AIR 1.0 und höher
Beim Laden einer SWF-Datei können Sie den Parameter
context
der
load()
-Methode des Loader-Objekts einstellen, das zum Laden der Datei verwendet wird. Dieser Parameter arbeitet mit einem LoaderContext-Objekt. Wenn Sie die
securityDomain
-Eigenschaft dieses LoaderContext-Objekts auf
Security.currentDomain
einstellen, sucht Flash Player auf dem Server der geladenen SWF-Datei nach einer URL-Richtliniendatei. Wenn eine Richtliniendatei vorhanden ist und sie Zugriff auf die Domäne der ladenden SWF-Datei erteilt, können Sie die SWF-Datei als importierte Medien laden. Auf diese Weise erhält die ladende Datei Zugriff auf Objekte in der Bibliothek der SWF-Datei.
Alternativ kann eine SWF-Datei auf die Klassen in geladenen SWF-Dateien aus einer anderen Sicherheits-Sandbox zugreifen, wenn die geladene SWF-Datei die Methode
Security.allowDomain()
aufruft, um der Domäne der aufrufenden SWF-Datei Zugriffsberechtigungen zu erteilen. Sie können den Aufruf der
Security.allowDomain()
-Methode zur Hauptklassen-Konstruktormethode der geladenen SWF-Datei hinzufügen und dann die ladende SWF-Datei einen Event-Listener als Reaktion auf das
init
-Ereignis hinzufügen lassen, das von der Eigenschaft
contentLoaderInfo
des Loader-Objekts ausgelöst wird. Wenn dieses Ereignis ausgelöst wird, hat die geladene SWF-Datei die Methode
Security.allowDomain()
in der Konstruktormethode aufgerufen und Klassen in der geladenen SWF-Datei stehen der ladenden SWF-Datei zur Verfügung. Die ladende SWF-Datei kann Klassen aus der geladenen SWF-Datei abrufen, indem
Loader.contentLoaderInfo.applicationDomain.getDefinition()
oder Loader.contentLoaderInfo.applicationDomain.getQualifiedDefinitionNames() (Flash Player 11.3 und höher; AIR 3.3 und höher) aufgerufen wird.
|
|
|