AIR Debug Launcher (ADL)

Använd AIR Debug Launcher (ADL) om du vill köra både SWF-baserade och HTML-baserade program under utveckling. Med ADL kan du köra ett program utan att först förpacka och installera det. ADL använder som standard en körningsversion som ingår i SDK, vilket innebär att du inte behöver installera körningsversionen separat för att kunna använda ADL.

ADL skriver ut trace-programsatser och körningsfelen i standardutdata, men har inte stöd för brytpunkter eller andra felsökningsfunktioner. Du kan använda Flash Debugger (eller en integrerad utvecklingsmiljö, till exempel Flash Builder) för komplexa felsökningsproblem.

Obs! Om trace() -programsatserna inte visas på konsolen kontrollerar du att du inte har angett ErrorReportingEnable eller TraceOutputFileEnable i filen mm.cfg. Du hittar mer information om var den här filen finns på olika plattformar i Redigera filen mm.cfg .

AIR har direkt stöd för felsökning vilket innebär att du inte behöver en felsökningsversion av körtidsmodulen (till skillnad från Adobe® Flash® Player). Använd Flash Debugger och AIR Debug Launcher (ADL) när du ska utföra felsökning på kommandoraden.

Flash Debugger distribueras i katalogen Flex SDK. Interna versioner, t.ex. fdb.exe för Windows, finns i underkatalogen bin. Java-versionen finns i underkatalogen lib. AIR Debug Launcher, adl.exe, finns i katalogen bin för Flex SDK-installationen. (Det finns inte en separat Java-version).

Obs! Du kan inte starta ett AIR-program direkt med fdb, eftersom fdb försöker starta det med Flash Player. Låt i stället AIR-programmet ansluta till en fdb-session som körs.

ADL-användning

Använd följande mönster när du kör ett program med ADL:

adl application.xml

Här är application.xml programbeskrivningsfilen för det aktuella programmet.

Den fullständiga syntaxen för ADL är:

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

(Objekt inom hakparenteser, [], är valfria.)

-runtime körningsbibliotek Anger katalogen som innehåller den körningsmiljö som ska användas. Om ingen anges används körningskatalogen som finns i samma SDK som ADL-programmet. Du måste ange körningskatalogen om du flyttar ADL bort från dess SDK-mapp. I Windows och Linux anger du katalogen som innehåller Adobe AIR -katalogen. I Mac OS X anger du katalogen som innehåller Adobe AIR.framework .

-pubid publisher-id Tilldelar det angivna värdet som utgivar-ID för AIR-programmet för den här körningen. Om du anger ett tillfälligt utgivar-ID kan du testa funktionerna i ett AIR-program, till exempel kommunicera via en lokal anslutning, som använder utgivar-ID:t för att unikt identifiera ett program. Från och med AIR 1.5.3 kan du även ange utgivar-ID i programbeskrivningsfilen (och bör inte använda den här parametern).

Obs! Från och med AIR 1.5.3 beräknas och tilldelas inte längre ett utgivar-ID automatiskt till ett AIR-program. Du kan ange ett utgivar-ID när du skapar en uppdatering till ett befintligt AIR-program, men nya program behöver inte och bör inte ange ett utgivar-ID.

-nodebug Stänger av felsökningsstödet. Om detta används kan programprocessen inte ansluta till Flash-felsökaren och dialogrutor för ohanterade undantag undertrycks. (Trace-programsatserna skrivs emellertid fortfarande till konsolfönstret.) Om du stänger av felsökningen kan programmet köra lite snabbare och också bättre emulera körningsläget för ett installerat program.

- atlogin Simulerar programstart vid inloggning. Med den här flaggan kan du testa programlogik som bara körs när ett program är inställt på att startas när användaren loggar in. När du använder -atlogin kommer den reason -egenskap för InvokeEvent-objektet som skickas till programmet att vara login i stället för standard (om inte programmet redan är igång).

-profile profileName Den angivna profilen används i ADL för att felsöka programmet. profileName kan vara något av följande värden:

  • desktop

  • extendedDesktop

  • mobileDevice

Om programbeskrivningen innehåller ett supportedProfiles -element måste den profil du anger med -profile vara medlem i den lista som stöds. Om du inte använder flaggan -profile används den första profilen i programbeskrivningsfilen som aktiv profil. Om programbeskrivningen inte innehåller supportedProfiles -elementet, och du inte använder flaggan -profile , används profilen desktop .

Du hittar mer information i avsnitten supportedProfiles och Enhetsprofiler .

-screensize värde Den simulerade skärmstorlek som ska användas när program körs i profilen mobileDevice på skrivbordet. Ange skärmstorleken som en fördefinierad skärmtyp eller som den normala breddens och höjdens pixelmått för stående layout, plus helskärmsbildens bredd och höjd. Använd en av följande fördefinierade skärmtyper för att ange värdet efter typ:

Skärmtyp

Normal bredd x höjd

Helskärm bredd x höjd

480

720 x 480

720 x 480

720

1 280 x 720

1 280 x 720

1 080

1 920 x 1 080

1 920 x 1 080

Droid

480 x 816

480 x 854

FWQVGA

240 x 432

240 x 432

FWVGA

480 x 854

480 x 854

HVGA

320 x 480

320 x 480

iPad

768 x 1 004

768 x 1 024

iPadRetina

1 536 x 2 008

1 536 x 2 048

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 1 024

WQVGA

240 x 400

240 x 400

WVGA

480 x 800

480 x 800

Använd följande format om du vill ange skärmens pixelmått direkt:

widthXheight:fullscreenWidthXfullscreenHeight

Ange alltid pixeldimensioner för stående layout, d.v.s. ange bredden som ett värde som är mindre än höjden. Du kan till exempel ange NexusOne-skärmen med:

-screensize 480x762:480x800

-extdir extension-directory Den katalog i vilken körningsmiljön ska söka efter ANE-tillägg. Katalogen innehåller en underkatalog för varje ANE-tillägg som används i programmet. Var och en av dessa underkataloger innehåller den opaketerade ANE-filen för ett tillägg. Till exempel:

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 
    

Tänk på följande när du använder parametern -extdir:

  • För ADL-kommandot krävs att varje angiven katalog har filnamnstillägget .ane. Filnamnsdelen före suffixet ".ane" kan emellertid vara ett valfritt godkänt filnamn. Det behöver inte matcha värdet för elementet extensionID i programbeskrivningsfilen.

  • Du kan ange parametern -extdir flera gånger.

  • Användningen av parametern -extdir skiljer sig åt mellan verktygen ADT och ADL. I ADT anger parametern en katalog som innehåller ANE-filer.

  • Du kan även använda miljövariabeln AIR_EXTENSION_PATH för att ange tilläggskatalogen. Läs mer i ADT-systemvariabler .

application.xml Programbeskrivningsfilen. Läs mer i AIR-programbeskrivningsfiler . Programbeskrivningsfilen är den enda parametern som krävs för ADL och i de flesta fall även den enda parametern som krävs.

root-directory Anger rotkatalogen för programmet som ska köras. Om ingen anges används katalogen som innehåller programbeskrivningsfilen.

-- arguments Den teckensträng som visas efter "--" skickas till programmet som kommandoradsargument.

Obs! När du startar ett AIR-program som redan körs startas inte en ny instans av det programmet. I stället skickas en invoke -händelse till den instans som körs.

ADL-exempel

Köra ett program i aktuell katalog:

adl myApp-app.xml

Köra ett program i en underkatalog till den aktuella katalogen:

adl source/myApp-app.xml release

Kör ett program och skicka två kommandoradsargument, "tick" och "tock":

adl myApp-app.xml -- tick tock

Köra ett program med hjälp av en viss körningsversion:

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

Köra ett program utan felsökningsstöd:

adl -nodebug myApp-app.xml

Köra ett program med profilen för mobilenheter och simulera NexusOne-skärmstorlek:

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

Köra ett program med Apache Ant (sökvägarna i exemplet gäller 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>

Avslutnings- och felkoder för ADL

I tabellen nedan beskrivs de avslutningskoder som skrivs ut av ADL:

Avslutningskod

Beskrivning

0

Lyckad start. ADL avslutas när AIR-programmet avslutas.

1

Lyckat anrop av ett AIR-program som redan körs. ADL avslutas omedelbart.

2

Användningsfel. Argumenten som anges för ADL är felaktiga.

3

Körningsversionen kan inte hittas.

4

Körningsversionen kan inte startas. Detta sker ofta på grund av att den version som anges i programmet inte matchar körningsmiljöns version.

5

Ett okänt fel har inträffat.

6

Programbeskrivningsfilen kan inte hittas.

7

Innehållet i programbeskrivningsfilen är inte giltigt. Det här felet anger vanligtvis att XML är felformaterat.

8

Huvudprogrammets innehållsfil (anges i elementet <content> för programbeskrivningsfilen) kan inte hittas.

9

Huvudprogrammets innehållsfil är inte en giltig SWF- eller HTML-fil.

10

Programmet saknar stöd för den profil som angetts med alternativet -profile.

11

Argumentet -screensize stöds inte i den aktuella profilen.