Pour déboguer une application mobile via une connexion USB, mettez en package l’application en utilisant l’option
‑listen
au lieu de l’option
-connect
. Si vous spécifiez l’option
‑listen
, le moteur d’exécution écoute une connexion provenant du débogueur Flash (FDB) sur le port TCP 7936 au démarrage de l’application. Exécutez alors FDB avec l’option
-p
; FDB établit la connexion.
Procédure de débogage USB pour Android
Pour que le débogueur Flash qui s’exécute sur l’ordinateur de bureau se connecte au moteur d’exécution d’AIR qui s’exécute sur le périphérique ou l’émulateur, vous devez utiliser l’utilitaire Android Debug Bridge (ADB, intégré au kit SDK d’Android) ou l’utilitaire iOS Debug Bridge (IDB, intégré au kit SDK d’AIR) pour transmettre le port du périphérique au port de l’ordinateur de bureau.
-
Ouvrez une fenêtre d’invite de commande ou de terminal et accédez au répertoire qui contient le code source de l’application.
-
Compilez l’application avec amxmlc en activant le débogage :
amxmlc -debug DebugExample.as
-
Mettez en package l’application à l’aide de la cible de débogage appropriée (telle que
apk-debug
), puis spécifiez l’option
‑listen
:
adt -package -target apk-debug -listen -storetype pkcs12 -keystore ../../AndroidCert.p12 DebugExample.apk DebugExample-app.xml DebugExample.swf
-
Connectez le périphérique à l’ordinateur de débogage via un câble USB. (Cette procédure permet également de déboguer une application qui s’exécute sur un émulateur, auquel cas la connexion USB est superflue — et impossible.)
-
Installez l’application.
Vous pouvez utiliser la commande ADT
-installApp
:
adt -installApp -platform android -package DebugExample.apk
-
Transmettez le port TCP 7936 du périphérique ou de l’émulateur à l’ordinateur de bureau par le biais de l’utilitaire Android ADB :
adb forward tcp:7936 tcp:7936
-
Lancez l’application sur le périphérique.
-
Dans une fenêtre de terminal ou de commande, exécutez FDB à l’aide de l’option -p :
fdb -p 7936
-
Dans la fenêtre du programme FDB, saisissez la commande
run
:
Adobe fdb (Flash Player Debugger) [build 14159]
Copyright (c) 2004-2007 Adobe, Inc. All rights reserved.
(fdb) run
-
L’utilitaire FDB tente de se connecter à l’application.
-
Une fois la connexion distante établie, vous pouvez définir les points d’arrêt avec la commande FDB
break
, puis démarrer l’exécution avec la commande
continue
:
(fdb) run
Player connected; session starting.
Set breakpoints and then type 'continue' to resume the session.
[SWF] Users:juser:Documents:FlashProjects:DebugExample:DebugExample.swf - 32,235 bytes after decompression
(fdb) break clickHandler
Breakpoint 1 at 0x5993: file DebugExample.as, line 14
(fdb) continue
Remarque :
le moteur d’exécution d’AIR et FDB utilisent par défaut le port 7936 pour le débogage. Vous pouvez spécifier l’utilisation d’autres ports avec le paramètre de port ADT -listen et le paramètre de port FDB -p. Si tel est le cas, vous devez transférer le numéro de port spécifié dans l’outil ADT au port spécifié dans FDB par le biais de l’utilitaire Android Debug Bridge :
adb forward tcp:adt_listen_port# tcp:fdb_port#
Procédure de débogage USB pour iOS
Pour que le débogueur Flash qui s’exécute sur l’ordinateur de bureau se connecte au moteur d’exécution d’AIR qui s’exécute sur le périphérique ou l’émulateur, vous devez utiliser l’utilitaire iOS Debug Bridge (IDB, intégré au kit SDK d’AIR) pour transmettre le port du périphérique au port de l’ordinateur de bureau.
-
Ouvrez une fenêtre d’invite de commande ou de terminal et accédez au répertoire qui contient le code source de l’application.
-
Compilez l’application avec amxmlc en activant le débogage :
amxmlc -debug DebugExample.as
-
Mettez en package l’application à l’aide de la cible de débogage appropriée (telle que
ipa-debug
ou
ipa-debug-interpreter
), puis spécifiez l’option
‑listen
:
adt -package -target ipa-debug-interpreter -listen 16000
xyz.mobileprovision -storetype pkcs12 -keystore Certificates.p12
-storepass pass123 OutputFile.ipa InputFile-app.xml InputFile.swf
-
Connectez le périphérique à l’ordinateur de débogage via un câble USB. (Cette procédure permet également de déboguer une application qui s’exécute sur un émulateur, auquel cas la connexion USB est superflue — et impossible.)
-
Installez et lancez l’application sur le périphérique iOS. Dans AIR 3.4 et les versions ultérieures, vous pouvez utiliser
adt ‑installApp
pour installer l’application via USB.
-
Déterminez le handle de périphérique à l’aide de la commande
idb -devices
(IDB est situé dans le dossier
air_sdk_root
/lib/aot/bin/iOSBin/idb
) :
./idb -devices
List of attached devices
Handle UUID
1 91770d8381d12644df91fbcee1c5bbdacb735500
Remarque :
(AIR 3.4 et versions ultérieures) vous pouvez utiliser
adt ‑devices
au lieu de
idb ‑devices
pour déterminer le handle de périphérique.
-
Transmettez un port sur votre bureau au port spécifié dans le paramètre
adt ‑listen
(dans ce cas, 16000 ; le port par défaut est 7936) à l’aide de l’utilitaire IDB et de l’ID de périphérique indiqué à l’étape précédente :
idb -forward 7936 16000 1
Dans cet exemple, 7936 est le port de bureau, 16000 est le port sur lequel écoute le périphérique connecté et 1 est l’ID de périphérique du périphérique connecté.
-
Dans une fenêtre de terminal ou de commande, exécutez FDB à l’aide de l’option -p :
fdb -p 7936
-
Dans la fenêtre du programme FDB, saisissez la commande
run
:
Adobe fdb (Flash Player Debugger) [build 23201]
Copyright (c) 2004-2007 Adobe, Inc. All rights reserved.
(fdb) run
-
L’utilitaire FDB tente de se connecter à l’application.
-
Une fois la connexion distante établie, vous pouvez définir les points d’arrêt avec la commande FDB
break
, puis démarrer l’exécution avec la commande
continue
:
Remarque :
le moteur d’exécution d’AIR et FDB utilisent par défaut le port 7936 pour le débogage. Vous pouvez spécifier l’utilisation d’autres ports avec le paramètre de port -listen d’IDB et le paramètre de port -p de FDB.