Debug di applicazioni AIR per TV

Simulazione del dispositivo con ADL

Il modo più veloce e facile di eseguire il test e il debug della maggior parte delle funzioni di un'applicazione consiste nell'eseguire l'applicazione sul computer di sviluppo utilizzando l'utilità ADL (Adobe Debug Launcher).

ADL usa l'elemento supportedProfiles nel descrittore dell'applicazione per determinare quale profilo utilizzare. Specificamente:

  • Se sono elencati più profili, ADL sceglie il primo dell'elenco.

  • Potete usare il parametro -profile di ADL per selezionare uno degli altri profili dell'elenco supportedProfiles.

  • Se non includete l'elemento supportedProfiles nel descrittore dell'applicazione, potete specificare qualsiasi profilo per l'argomento -profile.

Ad esempio, utilizzate il comando seguente per avviare un'applicazione simulando il profilo tv :
adl -profile tv myApp-app.xml

Quando si simula il profilo tv o extendedTV in ambiente desktop con ADL, l'applicazione viene eseguita in un contesto il più simile possibile a quello di un dispositivo di destinazione. Ad esempio:

  • Le API ActionScript che non fanno parte del profilo indicato nell'argomento -profile non sono disponibili.

  • ADL consente l'immissione di comandi di input del dispositivo, ad esempio comandi remoti, tramite comandi di menu.

  • Se è specificato tv o extendedTV nell'argomento -profile , ADL può simulare la classe StageVideo sul desktop.

  • Specificando extendedTV nell'argomento -profile , si consente all'applicazione di utilizzare gli stub o i simulatori di estensioni native impacchettati con il file AIRN dell'applicazione.

Tuttavia, poiché ADL esegue l'applicazione sul desktop, la prova di applicazioni AIR per TV con ADL è soggetta ad alcune limitazioni:

  • Non riflette le prestazioni dell'applicazione sul dispositivo di destinazione. Dovete eseguire i test delle prestazioni direttamente sul dispositivo di destinazione.

  • Non simula le limitazioni dell'oggetto StageVideo. In genere si usa la classe StageVideo, e non la classe Video, per riprodurre un video quando si crea un'applicazione AIR destinata a dispositivi TV. La classe StageVideo sfrutta i vantaggi in termini di prestazioni dell'hardware del dispositivo, ma presenta anche alcuni limiti relativamente alla visualizzazione. ADL riproduce il video sul desktop senza tali limitazioni. Di conseguenza, è opportuno testare la riproduzione video direttamente sul dispositivo di destinazione.

  • Non è in grado di simulare il codice nativo di un'estensione nativa. Potete comunque specificare il profilo extendedTV , che supporta le estensioni native, nell'argomento ADL -profile . ADL permette di testare un'applicazione con la versione stub o simulatore solo dell'estensione ActionScript inclusa nel pacchetto ANE. Tuttavia, in genere l'estensione corrispondente installata nel dispositivo include anche codice nativo. Per testare l'applicazione utilizzando l'estensione con il codice nativo, eseguitela sul dispositivo di destinazione.

Per ulteriori informazioni, vedete ADL (AIR Debug Launcher) .

Uso delle estensioni native

Se l'applicazione utilizza estensioni native, il comando ADL presenta la sintassi dell'esempio seguente:

adl -profile extendedTV -extdir C:\extensionDirs myApp-app.xml

L'esempio presuppone che:

  • Il percorso del tool ADL sia nella definizione di percorso della vostra shell della riga di comando. (Vedete Variabili d'ambiente dei percorsi .)

  • La directory corrente contenga i file dell'applicazione. Questi file includono i file SWF e il file descrittore dell'applicazione, in questo caso myApp-app.xml.

  • Il parametro -extdir indica una directory che contiene una directory per ciascuna estensione nativa utilizzata dall'applicazione. Ognuna di queste directory contiene il file ANE spacchettato di un'estensione nativa. Ad esempio:

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

    Questi file contengono una versione stub o simulatore esclusivamente dell'estensione solo per ActionScript. La versione dell'estensione che contiene il codice nativo è installata nel dispositivo AIR per TV.

Per ulteriori informazioni, vedete Developing Native Extensions for Adobe AIR (Sviluppo di estensioni native per Adobe AIR).

Immissione di comandi

ADL simula i pulsanti del telecomando di un dispositivo TV. Potete inviare l'input di questi pulsanti al dispositivo simulato utilizzando il menu visualizzato nel momento in cui ADL viene avviato utilizzando uno dei profili TV.

Dimensione dello schermo

È possibile provare l'applicazione su schermi di dimensioni differenti impostando il parametro ADL -screensize . Potete specificare una stringa contenente i quattro valori che rappresentano la larghezza e l'altezza degli schermi in formato normale e ingrandito.

Specificate sempre le dimensioni in pixel per il layout verticale, ovvero specificate una larghezza di valore inferiore a quello dell'altezza. Ad esempio:

adl -screensize 728x1024:768x1024 myApp-app.xml

Istruzioni trace

Quando eseguite un'applicazione TV sul desktop, l'output trace viene stampato sul debugger oppure nella finestra di terminale usata per avviare ADL.

Debug remoto con Flash Professional

Potete usare Flash Professional per eseguire il debug remoto dell'applicazione AIR per TV mentre è in esecuzione sul dispositivo di destinazione. Tuttavia, la procedura da seguire per configurare il debug remoto dipende dal dispositivo. Ad esempio, il kit "Adobe® AIR® per TV MAX 2010 Hardware Development Kit" contiene la documentazione relativa alla procedura dettagliata da seguire per tale dispositivo.

Indipendentemente dal dispositivo di destinazione, tuttavia, effettuate i seguenti passaggi per preparare il debug remoto:

  1. Nella finestra di dialogo Impostazioni pubblicazione, nella scheda Flash, selezionate Consenti debug.

    Questa opzione fa sì che Flash Professional includa le informazioni di debug in tutti i file SWF creati dal file FLA.

  2. Nella scheda Firma della finestra delle impostazioni di Adobe AIR (Impostazioni applicazione e programma di installazione), selezionate l'opzione per preparare un file AIR Intermediate (AIRI).

    Quando state ancora sviluppando l'applicazione, è sufficiente utilizzare un file AIRI, che non richiede una firma digitale.

  3. Pubblicate l'applicazione, creando il file AIRI.

Gli ultimi passaggi riguardano l'installazione ed esecuzione dell'applicazione nel dispositivo di destinazione. Questi passaggi, tuttavia, dipendono dal dispositivo specifico.

Debug remoto con Flash Builder

Potete usare anche Flash Builder per eseguire il debug remoto dell'applicazione AIR per TV mentre è in esecuzione sul dispositivo di destinazione. Tuttavia, la procedura da seguire per effettuare il debug remoto dipende dal dispositivo.

Indipendentemente dal dispositivo di destinazione, tuttavia, effettuate i seguenti passaggi per preparare il debug remoto:

  1. Selezionate Project > Export Release Build. Selezionate l'opzione per preparare un file AIR Intermediate (AIRI).

    Quando state ancora sviluppando l'applicazione, è sufficiente utilizzare un file AIRI, che non richiede una firma digitale.

  2. Pubblicate l'applicazione, creando il file AIRI.

  3. Modificate il pacchetto AIRI dell'applicazione includendo i file SWF che contengono le informazioni di debug.

    I file SWF che contengono le informazioni di debug si trovano nella directory del progetto Flash Builder dell'applicazione, in una directory chiamata bin-debug. Sostituite i file SWF nel pacchetto AIRI con quelli presenti nella directory bin-debug.

Su un computer di sviluppo Windows, potete eseguire questa sostituzione procedendo nel modo seguente:

  1. Rinominate il file del pacchetto AIRI sostituendo l'estensione .airi con l'estensione .zip.

  2. Estraete il contenuto del file ZIP.

  3. Sostituite i file SWF nella struttura di directory estratta con quelli in bin-debug.

  4. Comprimete in un nuovo file ZIP i file presenti nella directory estratta.

  5. Cambiate di nuovo l'estensione del file ZIP in .airi.

Se usate un computer di sviluppo Mac, la procedura da seguire per questa sostituzione dipende dal dispositivo. In genere, tuttavia, dovrete:

  1. Installare il pacchetto AIRI sul dispositivo di destinazione.

  2. Sostituire i file SWF nella directory di installazione dell'applicazione sul dispositivo di destinazione con quelli presenti nella directory bin-debug.

    Ad esempio, considerate il dispositivo incluso in Adobe AIR for TV MAX 2010 Hardware Development Kit. Installate il pacchetto AIRI come descritto nella documentazione del kit. Quindi, usate telnet sulla riga di comando del computer di sviluppo Mac per accedere al dispositivo di destinazione. Sostituite i file SWF nella directory di installazione dell'applicazione in /opt/adobe/stagecraft/apps/ <nome applicazione> / con quelli presenti nella directory bin-debug.

La procedura di debug remoto descritta di seguito fa riferimento a Flash Builder e al dispositivo incluso in Adobe AIR for TV MAX 2010 Hardware Development Kit.

  1. Sul computer che esegue Flash Builder (il computer di sviluppo), eseguite AIR for TV Device Connector, fornito con MAX 2010 Hardware Development Kit. Viene indicato l'indirizzo IP del computer di sviluppo.

  2. Sul dispositivo del kit hardware, avviate l'applicazione DevMaster, a sua volta fornita con il kit di sviluppo.

  3. Nell'applicazione DevMaster, immettete l'indirizzo IP del computer di sviluppo così come indicato in AIR for TV Device Connector.

  4. Nell'applicazione DevMaster, verificate che sia selezionato Enable Remote Debugging.

  5. Chiudete l'applicazione DevMaster.

  6. Sul computer di sviluppo, selezionate Start in AIR for TV Connector.

  7. Sul dispositivo del kit hardware, avviate un'altra applicazione. Verificate che in AIR for TV Device Connector siano visualizzate le informazioni di traccia.

    In caso contrario, il computer di sviluppo e il dispositivo del kit hardware non sono collegati. Verificate che la porta del computer di sviluppo utilizzata per le informazioni di traccia sia disponibile. Potete scegliere una porta diversa in AIR for TV Device Connector. Inoltre, verificate che il firewall consenta l'accesso alla porta selezionata.

Quindi, avviate il debugger in Flash Builder. Procedete nel modo seguente:

  1. In Flash Builder, selezionate Run > Debug Configurations.

  2. Dalla configurazione di debug esistente, che è per il debug locale, copiate il nome del progetto.

  3. Nella finestra di dialogo Debug Configurations, selezionate Web Application. Quindi selezionate l'icona New Launch Configuration.

  4. Selezionate il nome del progetto nel pannello Project.

  5. Nella sezione URL Or Path To Launch, rimuovete il segno di spunta da Use Default. Inoltre, immettete about:blank nel campo di testo.

  6. Selezionate Apply per salvare le modifiche.

  7. Selezionate Debug per avviare il debugger Flash Builder.

  8. Avviate l'applicazione sul dispositivo del kit hardware.

A questo punto potete usare il debugger di Flash Builder, ad esempio per impostare dei punti di interruzione ed esaminare le variabili.