AIR Debug Launcher (ADL)

Verwenden Sie den AIR Debug Launcher (ADL), um sowohl SWF-basierte als auch HTML-basierte Anwendungen während der Entwicklungsphase auszuführen. Mit ADL können Sie Anwendungen ausführen, ohne diese erst komprimieren und installieren zu müssen. ADL verwendet standardmäßig eine im SDK enthaltene Laufzeit, Sie müssen die Laufzeitumgebung also nicht separat installieren, um ADL einzusetzen.

ADL druckt trace-Anweisungen und Laufzeitfehler in die Standardausgabe, unterstützt jedoch keine Haltepunkte oder andere Debugging-Funktionen. Für komplexe Debuggingprobleme können Sie den Flash Debugger (oder eine integrierte Entwicklungsumgebung wie Flash Builder) verwenden.

Hinweis: Falls Ihre trace()-Anweisungen nicht in der Konsole angezeigt werden, stellen Sie sicher, dass Sie in der Datei „mm.cfg“ nicht ErrorReportingEnable oder TraceOutputFileEnable angegeben haben. Weitere Informationen zum plattformspezifischen Speicherort dieser Datei finden Sie unter Bearbeiten der Datei „mm.cfg“.

AIR unterstützt das Debuggen direkt, deshalb brauchen Sie keine Debugversion der Laufzeitumgebung (wie es mit Adobe® Flash® Player der Fall wäre). Für das Debuggen in der Befehlszeile verwenden Sie den Flash Debugger und den AIR Debug Launcher (ADL).

Der Flash Debugger befindet sich im Flex-SDK-Verzeichnis. Die nativen Versionen, zum Beispiel „fdb.exe“ unter Windows, befinden sich im Unterverzeichnis „bin“. Die Java-Version befindet sich im Unterverzeichnis „lib“. Der AIR Debug Launcher, „adl.exe“, befindet sich im Verzeichnis „bin“ der Flex-SDK-Installation. (Es gibt keine separate Java-Version.)

Hinweis: Sie können eine AIR-Anwendung nicht direkt mit fdb starten, da fdb versucht, die Anwendung mit Flash Player zu starten. Lassen Sie die AIR-Anwendung stattdessen eine Verbindung zu einer laufenden fdb-Sitzung herstellen.

ADL-Verwendung

Verwenden Sie das folgende Muster zum Ausführen einer Anwendung mit ADL:

adl application.xml

Dabei ist application.xml die Anwendungsdeskriptordatei für die Anwendung.

Die vollständige ADL-Syntax lautet:

adl     [-runtime runtime-directory] 
    [-pubid publisher-id] 
    [-nodebug] 
    [-atlogin] 
    [-profile profileName] 
    [-screensize value] 
    [-extdir extension-directory] 
    application.xml 
    [root-directory] 
    [-- arguments]

(Elemente in eckigen Klammern, [], sind optional.)

-runtime runtime-directory Gibt das Verzeichnis mit der zu verwendenden Laufzeitumgebung an. Wenn nicht anders angegeben, wird das Laufzeitverzeichnis im selben SDK wie die ADL verwendet. Wenn Sie ADL aus dem SDK-Ordner verschieben, müssen Sie das Laufzeitverzeichnis angeben. Geben Sie unter Windows und Linux das Verzeichnis an, das das Verzeichnis Adobe AIR enthält. Geben Sie unter Mac OS X das Verzeichnis an, das das Verzeichnis Adobe AIR.framework enthält.

-pubid publisher-id Weist für diese Ausführung den angegebenen Wert als Herausgeber-ID der AIR-Anwendung zu. Durch die Angabe einer temporären Herausgeber-ID können Sie die Funktionen einer AIR-Anwendung testen, zum Beispiel die Kommunikation über eine lokale Verbindung, die die Herausgeber-ID verwendet, um die Anwendung eindeutig zu identifizieren. Ab der Version AIR 1.5.3 können Sie die Herausgeber-ID auch in der Anwendungsdeskriptordatei angeben (und sollten diesen Parameter dann nicht verwenden).

Hinweis: Ab der Version AIR 1.5.3 wird die Herausgeber-ID nicht mehr automatisch berechnet und einer AIR-Anwendung zugewiesen. Sie können eine Herausgeber-ID angeben, wenn Sie ein Update für eine vorhandene AIR-Anwendung erstellen. Neue Anwendungen brauchen jedoch keine Herausgeber-ID und sollten diese auch nicht angeben.

-nodebug Schaltet die Debugging-Unterstützung aus. Der Anwendungsprozess kann keine Verbindung zum Flash Debugger herstellen und die Dialoge für nicht verarbeitete Ausnahmen werden unterdrückt. (Die trace-Anweisungen werden jedoch immer noch im Konsolenfenster ausgegeben.) Durch das Ausschalten der Debugging-Funktion läuft Ihre Anwendung etwas schneller und ahmt den Ausführungsmodus einer installierten Anwendung genauer nach.

-atlogin Simuliert das Starten der Anwendung beim Anmelden. Dieser Kennzeichner ermöglicht Ihnen das Testen von Anwendungslogiken, die nur ausgeführt werden, wenn die Anwendung so konfiguriert ist, dass sie beim Anmelden des Benutzers gestartet wird. Wenn Sie -atlogin verwenden, hat die reason-Eigenschaft des InvokeEvent-Objekts, das an die Anwendung abgesetzt wird, den Wert login anstatt standard (sofern die Anwendung nicht bereits ausgeführt wird).

-profile profileName ADL verwendet zum Debuggen der Anwendung das angegebene Profil. profileName kann einen der folgenden Werte annehmen:

  • desktop

  • extendedDesktop

  • mobileDevice

Wenn der Anwendungsdeskriptor ein supportedProfiles-Element enthält, muss das Profil, das Sie mit -profile angegeben, ein Mitglied der unterstützten Liste sein. Wenn der -profile-Kennzeichner nicht verwendet wird, wird das erste Profil im Anwendungsdeskriptor als aktives Profil verwendet. Wenn der Anwendungsdeskriptor das supportedProfiles-Element nicht enthält und Sie nicht den -profile-Kennzeichner verwenden, wird das desktop-Profil verwendet.

Weitere Informationen finden Sie unter supportedProfiles und Geräteprofile.

-screensize Wert Die simulierte Bildschirmgröße, die verwendet wird, wenn Anwendungen im mobileDevice-Profil auf dem Desktop ausgeführt werden. Geben Sie die Bildschirmgröße als vordefinierten Bildschirmtyp an oder als die Pixelabmessungen der normalen Breite und Höhe des Hochformatlayouts plus Breite und Höhe des Vollbilds. Um den Wert durch den Typ anzugben, verwenden Sie einen der folgenden vordefinierten Bildschirmtypen:

Bildschirmtyp

Normale Breite x Höhe

Vollbild Breite x Höhe

480

720 x 480

720 x 480

720

1280 x 720

1280 x 720

1080

1920x 1080

1920x 1080

Droid

480x 816

480x 854

FWQVGA

240 x 432

240 x 432

FWVGA

480x 854

480x 854

HVGA

320 x 480

320 x 480

iPad

768 x 1004

768 x 1024

iPadRetina

1536 x 2008

1536x2048

iPhone

320 x 460

320 x 480

iPhoneRetina

640 x 920

640 x 960

iPhone5Retina

640 x 1096

640 x 1136

iPhone6

750 x 1294

750 x 1334

iPhone6Plus

1242 x 2148

1242 x 2208

iPod

320 x 460

320 x 480

iPodRetina

640 x 920

640 x 960

iPod5Retina

640 x 1096

640 x 1136

NexusOne

480 x 762

480 x 800

QVGA

240 x 320

240 x 320

SamsungGalaxyS

480 x 762

480 x 800

SamsungGalaxyTab

600 x 986

600 x 1024

WQVGA

240 x 400

240 x 400

WVGA

480 x 800

480 x 800

Um die Pixelabmessungen des Bildschirms direkt anzugeben, verwenden Sie das folgende Format:

widthXheight:fullscreenWidthXfullscreenHeight

Geben Sie immer die Pixelabmessungen für das Hochformatlayout an, d. h. geben Sie für die Breite einen kleineren Wert als für die Höhe ein. Der NexusOne-Bildschirm kann zum Beispiel folgendermaßen angegeben werden:

-screensize 480x762:480x800

-extdir extension-directory Das Verzeichnis, in dem die Laufzeitumgebung nach nativen Erweiterungen suchen soll. Der Ordner enthält einen Unterordner für jede native Erweiterung, die die Anwendung verwendet. Jeder dieser Unterordner enthält die unverpackte ANE-Datei einer Erweiterung. Zum Beispiel:

C:\extensionDirs\ 
    extension1.ane\ 
        META-INF\ 
            ANE\ 
                Android-ARM\ 
                    library.swf 
                    extension1.jar 
                extension.xml 
            signatures.xml 
        catalog.xml 
        library.swf 
        mimetype 
    extension2.ane\ 
        META-INF\ 
            ANE\ 
                Android-ARM\ 
                    library.swf 
                    extension2.jar 
                extension.xml 
            signatures.xml 
        catalog.xml 
        library.swf 
        mimetype 
    

Wenn Sie den -extdir-Parameter verwenden, bedenken Sie Folgendes:

  • Der ADL-Befehl erfordert, dass jeder der angegebenen Ordner die .ane-Dateinamenerweiterung aufweist. Der Teil des Dateinamens vor der Dateinamenserweiterung „.ane“ kann jedoch ein beliebiger gültiger Dateiname sein. Er muss nicht mit dem Wert des extensionID-Elements in der Anwendungsdeskriptordatei übereinstimmen.

  • Sie können den -extdir-Parameter mehrmals angeben.

  • Die Verwendung des -extdir-Parameters unterscheidet sich bei ADT und ADL. In ADT gibt der Parameter einen Ordner an, der ANE-Dateien enthält.

  • Sie können die Erweiterungsordner auch mit der Umgebungsvariablen AIR_EXTENSION_PATH angeben. Siehe ADT-Umgebungsvariablen.

application.xml Die Anwendungsdeskriptordatei. Siehe AIR-Anwendungsdeskriptordateien. Der Anwendungsdeskriptor ist der einzige Parameter, der von ADL benötigt wird, und in den meisten Fällen der einzige erforderliche Parameter.

root-directory Gibt das Stammverzeichnis der auszuführenden Anwendung an. Wird das Stammverzeichnis nicht angegeben, wird das Verzeichnis verwendet, in dem sich die Anwendungsdeskriptordatei befindet.

-- arguments Alle Zeichenketten nach „--“ werden als Befehlszeilenargumente an die Anwendung übergeben.

Hinweis: Wenn Sie eine AIR-Anwendung aufrufen, die bereits ausgeführt wird, wird keine neue Instanz der Anwendung gestartet. Stattdessen wird an die laufende Anwendung ein invoke-Ereignis ausgelöst.

ADL-Beispiele

Ausführung einer Anwendung im aktuellen Verzeichnis:

adl myApp-app.xml

Ausführung einer Anwendung in einem Unterverzeichnis des aktuellen Verzeichnisses:

adl source/myApp-app.xml release

Ausführung einer Anwendung und Übergabe der Befehlszeilenargumente „tick“ und „tock“:

adl myApp-app.xml -- tick tock

Ausführung einer Anwendung mit einer bestimmten Laufzeit:

adl -runtime /AIRSDK/runtime myApp-app.xml

Ausführen einer Anwendung ohne Debugging-Unterstützung:

adl -nodebug myApp-app.xml

Führen Sie eine Anwendung im mobilen Geräteprofil aus und simulieren Sie die Bildschirmgröße des Nexus One:

adl -profile mobileDevice -screensize NexusOne myMobileApp-app.xml

Führen Sie eine Anwendung unter Verwendung von Apache Ant aus (die im Beispiel verwendeten Pfade sind für Windows):

<property name="SDK_HOME" value="C:/AIRSDK"/> 
<property name="ADL" value="${SDK_HOME}/bin/adl.exe"/> 
<property name="APP_ROOT" value="c:/dev/MyApp/bin-debug"/> 
<property name="APP_DESCRIPTOR" value="${APP_ROOT}/myApp-app.xml"/> 
 
<target name="test"> 
    <exec executable="${ADL}"> 
        <arg value="${APP_DESCRIPTOR}"/> 
        <arg value="${APP_ROOT}"/> 
    </exec>  
</target>

Exit- und Fehlercodes in ADL

Die folgende Tabelle enthält die von ADL ausgegebenen Exit-Codes:

Exit-Code

Beschreibung

0

Erfolgreicher Start. ADL wird nach Beendigung der AIR-Anwendung beendet.

1

Erfolgreicher Aufruf einer bereits laufenden AIR-Anwendung. ADL wird sofort beendet.

2

Verwendungsfehler. Die in ADL angegebenen Argumente sind falsch.

3

Die Laufzeitumgebung wurde nicht gefunden.

4

Die Laufzeitumgebung kann nicht gestartet werden. Häufig liegt der Grund hierfür darin, dass in der Anwendung eine Version angegeben ist, die nicht mit der Version der Laufzeitumgebung übereinstimmt.

5

Fehler mit unbekannter Ursache.

6

Die Anwendungsdeskriptordatei wurde nicht gefunden.

7

Der Inhalt des Anwendungsdeskriptors ist ungültig. Dieser Fehler weist in der Regel darauf hin, dass XML nicht gut gebildet wurde.

8

Die (im Element <content> der Anwendungsdeskriptordatei angegebene) Hauptanwendungsinhaltsdatei wurde nicht gefunden.

9

Die Hauptanwendungsinhaltsdatei ist keine gültige SWF- oder HTML-Datei.

10

Die Anwendung unterstützt das durch die -profile-Option angegebene Profil nicht.

11

Das -screensize-Argument wird im aktuellen Profil nicht unterstützt.