سؤال

I'm trying to load a SWF into a simple app for test purposes. The SWF has been compiled using swftools-0.9.1 using the following command:

/usr/bin/pdf2swf 10993.PDF -o 10993.SWF -f -T 9

The SWF loads fine in a browser.

Using the following Flex code together with Flex SDK 4.6:

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                       xmlns:s="library://ns.adobe.com/flex/spark" 
                       xmlns:mx="library://ns.adobe.com/flex/mx"
                       xmlns:flexpaper="com.devaldi.controls.flexpaper.*"
                       creationComplete="onCreationComplete()">
    <fx:Script>
        <![CDATA[
            import flash.utils.setTimeout;

            private function onCreationComplete():void
            {
                swf.SwfFile = 'http://my/domain/10993.SWF';
            }
        ]]>
    </fx:Script>
    <flexpaper:FlexPaperViewer width="100%" height="100%" id="swf"/>
</s:WindowedApplication>

The crossdomain.xml file is:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
  <allow-access-from domain="*"/>
</cross-domain-policy>

The end result is:

SecurityError: Error #3207: Application-sandbox content cannot access this feature.

Any idea why this is happening?

هل كانت مفيدة؟

المحلول 2

I could not load an external SWF in AIR due to the security restrictions. According to Adobe there is no workaround for this other than to load the external SWF through an external HTML page using the HTML component.

نصائح أخرى

This is probably caused by the loaded SWF containing a call to Security.allowDomain() which throws this error when called in an AIR app. Try re-generate the SWF file without the -t option.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top