Environnement de développement pour applications Android
par Albert Cohen

Objectifs :

Les TDs 5 et 6 utiliseront l'environnement de développement et d'émulation d'un téléphone/tablette Android, appelé Android SDK. Il n'a pas été possible d'installer cet environnement sur les machines de salle informatique, pour des raisons techniques. Il est donc nécessaire d'utiliser des PCs portables et de les configurer au préalable. Une séance optionnelle d'aide à l'installation sera programmée le 2 mars à 15h en PC 2 et 3, mais il est impératif de venir avec un PC proprement configuré en suivant la procédure ci-dessous avant la séance de TD du 4 mars.

0. Installation de l'environnement de développement pour Android

Pour pouvoir faire fonctionner Android, tout ordinateur x86 avec 2GB de mémoire convient. Son système doit de préférence être une version 64 bits. Les distributions Linux 64 bits doivent être capables d'exécuter des applications 32 bits et disposer de l'environnement de virtualisation kvm. Sur MacOS et Linux, la commande uname -a permet de savoir si l'on est en 64 ou 32 bits. Sous Windows, cette information est disponible en effectuant une recherche sur le mot clé system dans le menu Démarrer -> Recherche, puis cliquer sur system dans la liste retournée par la recherche. Les logiciels suivants doivent être installés :

Pour terminer l'installation du SDK Android, il faut lancer l'Android SDK Manager dans le menu Window sous Eclipse. Il est également possible de le faire en ligne de commande, dans le répertoire du SDK Android:

  tools/android

Ensuite, naviguer sur l'onglet Tools puis Options et saisir le proxy HTTP de l'École. Puis naviguer dans les onglets et désélectionner les sous-items de SDK Platform Android 5.0.1 (API 21) sauf Documentation, SDK Platform, Samples for SDK et Intel x86 Atom System Image ou bien Atom_64 System Image (plus rapide sous Windows 64 bits). Note : sur Windows et Mac, il est nécessaire d'installer manuellement le composant Intel emulator accelerator ; Android SDK Manager le récupère mais ne l'installe pas ; sur Mac il faut aller dans extras/intel/hardware../ et l'installer manuellement (double clic avec droits d'administrateur).

Ensuite, cliquer sur Install packages pour installer cette version du SDK (outils et version d'Android 5.0.1 pour le téléphone virtuel). Cela doit ressembler à la fenêtre ci-dessous (ici pour Mac):

Attention :

Avant de pouvoir lancer une application, il reste nécessaire de créer un AVD, pour Android Virtual Device (périphérique virtuel Android), qui permet de paramétrer les caractéristiques du matériel que l'on souhaite simuler. On appellera naturellement cet AVD inf431. Il sera utilisé tout au long des TDs 5 et 6. Naviguer sur l'onglet Virtual devices (ou bien dans le menu Window d'Eclipse), cliquer sur Create et sélectionner le Nexus S comme device Android. Choisir comme nom inf431 et comme cible Android 5.0.1 - API Level 21 ; avec le Skin "Skin with dynamic hardware controls" comme interface d'émulation du téléphone, et cocher l'option Use host GPU. Laisser le reste inchangé et cliquer sur OK.

Il est également possible de créer un AVD en ligne de commande. Commencer par éxécuter:

  android list targets

Repérez le numéro identifiant correspondant à la cible "android-21", et substituez le à <target_id> dans la commande suivante:

  android create avd -t <target_id> -n inf431 --abi default/x86

puis répondre no à la question proposant de définir un profil personalisé (réponse par défaut).

Pour vérifier qu'Android est correctement configuré, nous allons lancer un programme sur le téléphone. Le SDK contient de nombreux programmes de "demo" dans le répertoire samples. Pour lancer l'un de ces programmes, par exemple LunarLander, choisissez dans Eclipse l'item de menu pour créer un nouveau projet Android, puis Create project from existing source. Le code se trouve dans le répertoire samples/android-21/legacy/LunarLander du SDK.

1. Programmation graphique événementielle

Suite dans le TD5.