You are on page 1of 8

Polytech’Nice – Sophia

S. Lavirotte – G. Rey – J.-Y. Tigli


Cours/TD 2008-2009

Introduction au SDK d’Android

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.

2.2 Eclipse et Ant


Il y a deux solutions pour développer simplement avec les outils fournis par Google pour son SDK Android, soit
utiliser l’IDE Eclipse soit utiliser Ant avec ou sans IDE. Netbean utilisant Ant par défaut pour ses différentes tâches
(compilation, build, …), il est donc simple d’utiliser également Netbeans pour développer sous Android.

Dans ce Cours/TD nous allons nous limiter à Eclipse (dans sa version 3.4) ainsi qu’a Ant.

2.2.1 Installation d’Eclipse


Si Eclipse n’est pas installé sur votre machine, rendez vous à l’adresse http://www.eclipse.org/downloads/ et
téléchargez la version « Eclipse IDE for Java Developers ». Extrayez l’archive et exécutez Eclipse.

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

Introduction au SDK d’Android


2.2.2 Installation de Ant
Si Apache Ant n’est pas installé sur votre machine, rendez vous à l’adresse http://ant.apache.org/bindownload.cgi
et téléchargez la version 1.7.1 (pensez à bien choisir votre site miroir pour le téléchargement). Ensuite, extrayez
l’archive et ajoutez le répertoire bin au PATH de votre machine.
Il faut également créez une variable JAVA_HOME contenant la localisation de votre jdk et une variable
ANT_HOME contenant la localisation du répertoire d’installation de ANT.

2.3 Plugin Eclipse


Si vous utilisez Eclipse pour vos développements, sachez que Google fournit un plugin pour cet IDE nommé
Android Development Tools (ADT). Voici la marche à suivre pour installer ce plugin sur Eclipse 3.4 :
• Démarrez Eclipse puis sélectionnez le menu Help > Software Updates
• Dans la fenetre qui vient de s’ouvrir, cliquez sur l’onglet Available Software.
• Cliquez sur Add Site...
• Dans la boite de dialogue qui apparaît, indiquez un nom (par exemple Android Plugin) et l'URL https://dl-
ssl.google.com/android/eclipse/ . Appuyez sur le bouton OK. (en cas de problème, utilisez l’adresse
http://dl-ssl.google.com/android/eclipse/)
• Dans l’onglet Available Software, sélectionnez Developer Tools et cliquez sur Install...
• Finissez l’installation puis redémarrez Eclipse.
• Une fois Eclipse redémarré, sélectionnez le menu Window > Preferences... (ou Eclipse > Preferences si
vous êtes sous Mac OS X).
• Sélectionnez Android dans le panel de gauche.
• Indiquez le chemin où vous avez installé le SDK Android (bouton Browse pour parcourir le système de
fichier).
• Appuyez sur le bouton OK.

3 Prise en main de l’émulateur


Commencez par exécuter l’émulateur qui ce trouve dans le répertoire tools de votre <android_sdk>. Explorez les
différents menus pour comprendre le fonctionnement des boutons et découvrir les exemples montrant les
possibilités de l’API.

4 Première application avec Android : Helloworld

4.1 Développement avec Ant


Pour commencer, il est nécessaire de créer un projet Android. Pour cela il suffit d'utiliser le script activityCreator
(activityCreator.py pour Linux/Mac, activityCreator.bat pour Windows) fournit par le SDK auquel ont indique le
nom du projet (via l'option --out) ainsi que sa classe principale.

activityCreator.py --out HelloWorld fr.unice.android.HelloWorld

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

Introduction au SDK d’Android


• src/fr/unice/android/HelloWorld.java : La classe HelloWorld.
Voici le fichier HelloWorld.java généré :
HelloWorld.java
package fr.unice.android;

import android.app.Activity;
import android.os.Bundle;

public class HelloWorld extends Activity {

/** Called with the activity is first created. */


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}

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;

public class HelloWorld extends Activity {

/** Called with the activity is first created. */


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView textView = new TextView(this);
textView.setText("Hello world !");
setContentView(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.

TextView tv = new TextView(this);

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

Introduction au SDK d’Android

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");

La dernière étape est d'afficher le TextView à l'écran : setContentView(tv);

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.

Figure 1 : Anciennes et nouvelle version de l'émulateur

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

Introduction au SDK d’Android


4.2 Développement avec le plugin Eclipse
Voici les étapes pour développer la même application avec Eclipse et le plugin Android Development Tools.
Commencez par sélectionner le menu File > New > Project... puis Android > Android project.
Indiquez les propriétés du projet puis appuyez sur le bouton Finish :

Sélectionnez le fichier HelloWorld.java dans l'arborescence de gauche qui contient le code suivant :

Modifier ce code comme précédemment :


HelloWorld.java
package fr.unice.android;

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

Introduction au SDK d’Android

public class HelloWorld extends Activity {

/** Called with the activity is first created. */


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView textView = new TextView(this);
textView.setText("Hello world !");
setContentView(textView);
}
}

Les explications du code sont données dans le chapitre précédent.


Pour exécuter l'application, sélectionnez le menu Run > Run Configurations.
Dans la boite de dialogue qui s'ouvre, double cliquez sur l'entrée Android Application.
Un nouveau lanceur nommé New_configuration doit apparaître, sélectionnez le et renseignez le panel de droite :

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

Introduction au SDK d’Android


5 Snake
Dans <android_sdk>/samples/ vous trouverez le projet Snake, il s’agit d’une version très simple d’un jeu également
connu sous le nom de centipede et développé par Atari Inc., sorti en 1981 sur borne d'arcade.
Créez un nouveau projet android avec Eclipse. Dans la fenetre « new Android Project », sélectionnez « create
project from existing source » et indiquez le répertoire <android_sdk>\samples\Snake.

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.1 Photo viewer


Imaginez et créez une application permettant de voir des photos. Elle devra permettre d’afficher l’ensemble des
photos d’un répertoire, d’avoir un mode diaporama manuel et automatique. On doit également pouvoir retourner
la photo dans un sens ou dans l’autre, pouvoir faire un zoom, …

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

Introduction au SDK d’Android


8 Liens
• Le site d'Android : http://code.google.com/android/
• La documentation officielle d'Android : http://code.google.com/android/documentation.html
• SDK Android : http://code.google.com/android/download.html

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/

You might also like