2013-03-15 23 views
6

Sono nuovo ad AdobeAir. Ho iniziato con l'applicazione helloworld semplicemente seguendo il seguente link.Errore ADL durante il caricamento del contenuto iniziale Adobe air

http://help.adobe.com/en_US/air/build/WS144092a96ffef7cc4c0afd1212601c9a36f-8000.html 

io sono in grado di compilare il file con successo HelloWorld.mxml, ma io non sono in grado di eseguire l'applicazione dal seguente comando adl HelloWorld-app.xml. il messaggio di errore dice .. errore durante il caricamento del contenuto iniziale.

Inoltre vi allego il HelloWorld-app.xml

<?xml version="1.0" encoding="UTF-8"?> 
<application xmlns="http://ns.adobe.com/air/application/1.0"> 
    <id>samples.flex.HelloWorld</id> 
    <version>0.1</version> 
    <filename>HelloWorld</filename> 
    <initialWindow> 
     <content>HelloWorld.swf</content> 
     <visible>true</visible> 
     <systemChrome>none</systemChrome> 
     <transparent>true</transparent> 
     <width>400</width> 
     <height>200</height> 
    </initialWindow> 
</application> 

e HelloWorld.mxml è

<?xml version="1.0" encoding="utf-8"?> 
<s:WindowedApplication xmlns:fx="http://`enter code here`ns.adobe.com/mxml/2009" 
         xmlns:s="library://ns.adobe.com/flex/spark" 
         xmlns:mx="library://ns.adobe.com/flex/mx" 
         title="Hello World"> 

    <s:Label text="Hello AIR" horizontalCenter="0" verticalCenter="0"/> 
</s:WindowedApplication> 

Ti prego, aiutami.

risposta

6

Secondo this blog post è necessario verificare se la riga dello spazio dei nomi in HelloWorld-app.xml corrisponde alla versione AIR.

Per esempio, con gli strumenti di MXML/ADL che vengono con la distribuzione Flex 4.6, la linea di spazio dei nomi corretto sembra essere

<application xmlns="http://ns.adobe.com/air/application/3.1"> 

E 'inoltre necessario che il vostro mxmlc o compilatore amxmlc non proviene da una più recente SDK rispetto adl.

Ad esempio, non è possibile eseguire le app AIR compilate con Flex 4.6 in adl da AIR 2.6, per cui sono necessari gli strumenti Flex 4.5.

6

Grazie, la tua risposta ha aiutato a risolvere il mio problema con IntelliJ Idea e l'ultimo pacchetto FLEX/AIR. Per risolvere tale errore ho dovuto fornire un file descrittore dell'applicazione modificato per il mio modulo, dal momento che quella generata automaticamente aveva questa impostazione:

<application xmlns="http://ns.adobe.com/air/application/2.0"> 

Ecco i passi necessari per creare un file descrittore applicazione personalizzato:

File - Struttura Projext - Moduli - Pacchetto AIR - Modello personalizzato - Crea

Scegli la tua versione AIR minima (in realtà per Flex 4.10 penso che sia AIR 3.8) e il tuo modulo verrà compilato ed eseguito senza problemi.

visualizzare Screenshot here

4

Il numero dello spazio dei nomi AIR trovano in xmlns è solo metà della storia. Questo definisce la versione runtime minima richiesta per visualizzare il contenuto. L'altra metà della storia è il contenuto compilato da -swf-version.

Se il file SWF è compilato con un nuovo -swf-version di AIR adl in grado di gestire, verrà visualizzato il messaggio " " durante il caricamento del contenuto iniziale.

ho preso questo tavolo da another answer e ha aggiunto informazioni sulla versione AIR (source):

-swf-version | Flash Player | AIR 
======================================= 
     9  |  9  | 2.0 ? 
     10  | 10, 10.1 | 2.5 ? 
     11  |  10.2 | 2.6 
     12  |  10.3 | 2.7 
     13  |  11.0 | 3.0 
     14  |  11.1 | 3.1 
     15  |  11.2 | 3.2 
     16  |  11.3 | 3.3 
     17  |  11.4 | 3.4 
     18  |  11.5 | 3.5 
     19  |  11.6 | 3.6 
     20  |  11.7 | 3.7 
     21  |  11.8 | 3.8 
     22  |  11.9 | 3.9 
     23  |  12.0 | 4.0 
     24  |  13.0 | 13.0 
     25  |  14.0 | 14.0 
     26  |  15.0 | 15.0 
     27  |  16.0 | 16.0 
     28  |  17.0 | 17.0 
     29  |  18.0 | 18.0 
     30  |  19.0 | 19.0 
     31  |  20.0 | 20.0 

È possibile determinare il -swf-version di un file SWF utilizzando l'utilità swfdump incluso nel Flex e AIR SDK.

> swfdump example.swf | grep -i '<swf' 
<swf xmlns='http://macromedia/2003/swfx' version='18' framerate='24' size='10000x7500' compressed='false' > 

È possibile che questo file SWF è compilato con -swf-version=18 e quindi richiederà AIR 3.5 o più recente, e xmlns="http://ns.adobe.com/air/application/3.5"

Si noti inoltre che gli strumenti più recenti possono ancora colpire più vecchio -swf-versions. Quindi puoi costruire SWF compatibili con i vecchi AIR e Flash Player. Fai solo attenzione a controllare le API che usi nella documentazione. Alcune API più recenti (come BitmapData.drawWithQuality) elencano un requisito di versione minimo per il lettore in Versioni runtime.

Problemi correlati