Académique Documents
Professionnel Documents
Culture Documents
1 Introduction
Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google.
Celui-ci met à disposition un kit de développement (SDK) basé sur le langage Java. Ce Cours/TD va vous expliquer
comment installer ce SDK et vous présenter un exemple d'utilisation au travers le développement d'une application
de type "Helloworld" ainsi que d’applications plus complexes.
2 Installation
2.1 Installation du SDK
Basé sur le langage Java, le SDK Android nécessite d'avoir un JDK (5 ou 6) installé sur sa machine pour pouvoir être
utilisé. Le SDK est disponible en téléchargement pour les plateformes Linux, Mac et Windows à l'adresse suivante :
http://code.google.com/android/download_list.html
La version actuelle est la Version 1.0 Release qui date de novembre 2008
Décompressez l'archive zip ; vous obtenez alors un répertoire contenant le SDK nommé selon le format suivant :
Android-sdk-<platform>-<version>
Notez le chemin complet vers ce répertoire (nous y ferons référence par la suite sous la dénomination
<android_sdk>) Afin de faciliter l'utilisation des outils du SDK, nous allons ajouter le sous-répertoire tools du
répertoire <android_sdk> dans la variable d'environnement PATH de votre système.
• Linux : éditez votre fichier ~/.bash_profile ou ~/.bashrc et cherchez la ligne définissant le PATH afin d'y
ajouter le chemin <android_sdk>/tools. Si cette ligne n'existe pas, ajoutez celle-ci : export
PATH=${PATH}:<android_sdk>/tools. Vous pouvez également taper directement cette commande dans
une fenêtre shell mais celle-ci ne sera alors valide que pour ce shell (et ces fils). Il vous faudra donc
ressaisir la commande si vous fermez votre shell.
• MacOS X : éditez le fichier .bash_profile présent dans votre répertoire personnel (ou créez le s'il n'existe
pas) puis procédez comme pour Linux.
• Windows : Faites un clic droit sur le "Poste de travail" et sélectionnez "Propriétés". Dans l'onglet "Avancé"
(la tâche "paramètres système avancé" pour vista) cliquez sur le bouton "Variables d'environnement". Une
boite de dialogue apparaît, double-cliquez sur l'entré "Path" présente dans la partie "Variables Systèmes".
Ajoutez-y le chemin <android_sdk>\tools. Ou directement dans une fenêtre de commande tapez
path=%path%:<android_sdk>\tools. Le path mise à jour, ne sera alors valable que pour cette fenêtre et
seulement jusqu'à sa fermeture.
Dans ce Cours/TD nous allons nous limiter à Eclipse (dans sa version 3.4) ainsi qu’a Ant.
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
1
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
Polytech’Nice – Sophia
S. Lavirotte – G. Rey – J.-Y. Tigli
Cours/TD 2008-2009
Un répertoire portant le nom du projet (ici HelloWorld) est alors créé. Celui-ci contient l'arborescence suivante :
• AndroidManifest.xml : Le fichier manifest de l'application.
• build.xml : Un fichier xml pour compiler avec Ant.
• res : Le répertoire des ressources.
• src : Le répertoire des sources.
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
2
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
Polytech’Nice – Sophia
S. Lavirotte – G. Rey – J.-Y. Tigli
Cours/TD 2008-2009
import android.app.Activity;
import android.os.Bundle;
Commençons notre Helloworld en modifiant ce fichier afin d'afficher du texte à l'écran (nous détaillerons le code
ensuite) :
HelloWorld.java
package fr.unice.android;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
Dans Android, tous les composants graphiques (bouton, animation, champ texte, etc) sont basés sur la classe View.
Ainsi un champ texte est représenté par la classe TextView.
L'argument du constructeur de la classe TextView est une instance de la classe Context qui fournit entre autre des
services tel que la récupération des ressources, des accès base de données et des préférences.
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
3
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
Polytech’Nice – Sophia
S. Lavirotte – G. Rey – J.-Y. Tigli
Cours/TD 2008-2009
Comme notre classe HelloWorld hérite d'Activity qui elle-même hérite de Context, nous pouvons passer la
référence 'this' au TextView.
Une fois le TextView instancié, il faut lui spécifier le texte à afficher : tv.setText("Hello, Android");
Il ne reste plus qu'à compiler et déployer notre application. La compilation s'effectue avec Ant dans le répertoire du
projet (tapez juste ant). Un répertoire bin est alors créé dans lequel vous trouverez notamment le fichier
HelloAndroid.apk qui est le package Android de l'application (celui qui sera déployé).
Pour tester l'application, commencez par lancer l'émulateur avec la commande emulator et attendez l'apparition
de la page d'accueil.
Notez que le démarrage de l'émulateur peut être assez long, selon la machine de développement utilisée.
Le déploiement de l'application (le fichier HelloWorld.apk) s'effectue avec l'outil adb. Ainsi depuis la racine du
projet : adb install bin/HelloWorld.apk ou à l’aide de la commande ant install.
Une fois ceci fait, sélectionnez le menu « menu » dans l'émulateur puis le menu flèche et enfin lancez l'application
HelloWorld :
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
4
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
Polytech’Nice – Sophia
S. Lavirotte – G. Rey – J.-Y. Tigli
Cours/TD 2008-2009
Sélectionnez le fichier HelloWorld.java dans l'arborescence de gauche qui contient le code suivant :
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
5
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
Polytech’Nice – Sophia
S. Lavirotte – G. Rey – J.-Y. Tigli
Cours/TD 2008-2009
Il ne vous reste plus qu'à lancer l'application en appuyant sur le bouton Run.
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
6
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
Polytech’Nice – Sophia
S. Lavirotte – G. Rey – J.-Y. Tigli
Cours/TD 2008-2009
5.1 Tests
Compilez, déployez puis testez rapidement le jeu (ne passez pas votre TP à jouer !!).
Explorez également l’ensemble des sources et ressources qui composent ce projet.
5.2 Modifications
1. Commencez par traduire le jeu en français… Il y a au moins 4 chaines de caractères différentes à traduire…
2. Modifiez le jeu en utilisant les images ci-dessous pour remplacer les boules vertes qui forme le cadre
3. Modifiez votre version précédente pour n’utiliser que 2 images, l’horizontal et une des images d’angles.
4. Ajoutez des obstacles, symbolisés par des boules vertes, qui s’ils sont mangés,
a. arrêtent la partie,
b. diminuent le serpent de 2 boules.
6 Exercice au choix
Choisissez une des applications suivantes et réalisez là. Le but est de créer votre application et pas de recopier du
code. N’essayez pas de faire quelque chose de trop compliqué pour commencer. Débuter avec une version simple
que vous pourrez enrichir petit à petit. Vous pouvez vous aider des exemples donnés dans API Demos :
<android_sdk>samples\ApiDemos\src\com\google\android\samples\.
Vous devrez obligatoirement rendre votre réalisation à la fin de la séance. Si vous le souhaitez vous pouvez
travailler en binôme mais pas à plus.
6.2 Sudoku
Ecrire un petit jeu de sudoku. Le jeu devra être jouable avec ou sans le clavier. A vous d’imaginer comment saisir
des nombres de manière simple en utilisant ses doigts.
7 Remerciements
Ce cours/TP utilise très largement l’article de Yann D'ISANTO publié sur Developpez.com ainsi que les exemples
de prise en main fournis par Google à l’adresse http://code.google.com/intl/fr/android/intro/hello-android.html
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
7
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
Polytech’Nice – Sophia
S. Lavirotte – G. Rey – J.-Y. Tigli
Cours/TD 2008-2009
Polytech’Nice – Sophia
Université de Nice – Sophia Antipolis
930, Route des Colles – B.P. 145 - 06903 Sophia Antipolis Cedex – France
8
Tél : +33 (0)4 92 96 50 50 – Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/