Vous êtes sur la page 1sur 8

Cours/TD Introduction au SDK dAndroid

1 Introduction

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

Android est un systme d'exploitation pour tlphone portable de nouvelle gnration dvelopp par Google. Celui-ci met disposition un kit de dveloppement (SDK) bas sur le langage Java. Ce Cours/TD va vous expliquer comment installer ce SDK et vous prsenter un exemple d'utilisation au travers le dveloppement d'une application de type "Helloworld" ainsi que dapplications plus complexes.

2 Installation
2.1 Installation du SDK
Bas sur le langage Java, le SDK Android ncessite d'avoir un JDK (5 ou 6) install sur sa machine pour pouvoir tre utilis. Le SDK est disponible en tlchargement 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 Dcompressez l'archive zip ; vous obtenez alors un rpertoire contenant le SDK nomm selon le format suivant :
Android-sdk-<platform>-<version>

Notez le chemin complet vers ce rpertoire (nous y ferons rfrence par la suite sous la dnomination <android_sdk>) Afin de faciliter l'utilisation des outils du SDK, nous allons ajouter le sous-rpertoire tools du rpertoire <android_sdk> dans la variable d'environnement PATH de votre systme. Linux : ditez votre fichier ~/.bash_profile ou ~/.bashrc et cherchez la ligne dfinissant 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 fentre 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 prsent dans votre rpertoire personnel (ou crez le s'il n'existe pas) puis procdez comme pour Linux. Windows : Faites un clic droit sur le "Poste de travail" et slectionnez "Proprits". Dans l'onglet "Avanc" (la tche "paramtres systme avanc" pour vista) cliquez sur le bouton "Variables d'environnement". Une boite de dialogue apparat, double-cliquez sur l'entr "Path" prsente dans la partie "Variables Systmes". Ajoutez-y le chemin <android_sdk>\tools. Ou directement dans une fentre de commande tapez path=%path%:<android_sdk>\tools. Le path mise jour, ne sera alors valable que pour cette fentre et seulement jusqu' sa fermeture.

2.2 Eclipse et Ant


Il y a deux solutions pour dvelopper simplement avec les outils fournis par Google pour son SDK Android, soit utiliser lIDE Eclipse soit utiliser Ant avec ou sans IDE. Netbean utilisant Ant par dfaut pour ses diffrentes tches (compilation, build, ), il est donc simple dutiliser galement Netbeans pour dvelopper sous Android. Dans ce Cours/TD nous allons nous limiter Eclipse (dans sa version 3.4) ainsi qua Ant. 2.2.1 Installation dEclipse Si Eclipse nest pas install sur votre machine, rendez vous ladresse http://www.eclipse.org/downloads/ et tlchargez la version Eclipse IDE for Java Developers . Extrayez larchive et excutez Eclipse.
PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Cours/TD Introduction au SDK dAndroid

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

2.2.2 Installation de Ant Si Apache Ant nest pas install sur votre machine, rendez vous ladresse http://ant.apache.org/bindownload.cgi et tlchargez la version 1.7.1 (pensez bien choisir votre site miroir pour le tlchargement). Ensuite, extrayez larchive et ajoutez le rpertoire bin au PATH de votre machine. Il faut galement crez une variable JAVA_HOME contenant la localisation de votre jdk et une variable ANT_HOME contenant la localisation du rpertoire dinstallation de ANT.

2.3 Plugin Eclipse


Si vous utilisez Eclipse pour vos dveloppements, 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 : Dmarrez Eclipse puis slectionnez le menu Help > Software Updates Dans la fenetre qui vient de souvrir, cliquez sur longlet Available Software. Cliquez sur Add Site... Dans la boite de dialogue qui apparat, indiquez un nom (par exemple Android Plugin) et l'URL https://dlssl.google.com/android/eclipse/ . Appuyez sur le bouton OK. (en cas de problme, utilisez ladresse http://dl-ssl.google.com/android/eclipse/) Dans longlet Available Software, slectionnez Developer Tools et cliquez sur Install... Finissez linstallation puis redmarrez Eclipse. Une fois Eclipse redmarr, slectionnez le menu Window > Preferences... (ou Eclipse > Preferences si vous tes sous Mac OS X). Slectionnez Android dans le panel de gauche. Indiquez le chemin o vous avez install le SDK Android (bouton Browse pour parcourir le systme de fichier). Appuyez sur le bouton OK.

3 Prise en main de lmulateur


Commencez par excuter lmulateur qui ce trouve dans le rpertoire tools de votre <android_sdk>. Explorez les diffrents menus pour comprendre le fonctionnement des boutons et dcouvrir les exemples montrant les possibilits de lAPI.

4 Premire application avec Android : Helloworld


4.1 Dveloppement avec Ant
Pour commencer, il est ncessaire de crer 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 rpertoire 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 rpertoire des ressources. src : Le rpertoire des sources.
PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Cours/TD Introduction au SDK dAndroid


src/fr/unice/android/HelloWorld.java : La classe HelloWorld. Voici le fichier HelloWorld.java gnr : 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); } }

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

Commenons notre Helloworld en modifiant ce fichier afin d'afficher du texte l'cran (nous dtaillerons 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 bass sur la classe View. Ainsi un champ texte est reprsent 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 rcupration des ressources, des accs base de donnes et des prfrences.
PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Cours/TD Introduction au SDK dAndroid

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

Comme notre classe HelloWorld hrite d'Activity qui elle-mme hrite de Context, nous pouvons passer la rfrence 'this' au TextView. Une fois le TextView instanci, il faut lui spcifier le texte afficher : tv.setText("Hello, Android"); La dernire tape est d'afficher le TextView l'cran : setContentView(tv); Il ne reste plus qu' compiler et dployer notre application. La compilation s'effectue avec Ant dans le rpertoire du projet (tapez juste ant). Un rpertoire bin est alors cr dans lequel vous trouverez notamment le fichier HelloAndroid.apk qui est le package Android de l'application (celui qui sera dploy). 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 dmarrage de l'mulateur peut tre assez long, selon la machine de dveloppement utilise.

Figure 1 : Anciennes et nouvelle version de l'mulateur

Le dploiement 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 laide de la commande ant install. Une fois ceci fait, slectionnez le menu menu dans l'mulateur puis le menu flche et enfin lancez l'application HelloWorld :

PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Cours/TD Introduction au SDK dAndroid


4.2 Dveloppement avec le plugin Eclipse

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

Voici les tapes pour dvelopper la mme application avec Eclipse et le plugin Android Development Tools. Commencez par slectionner le menu File > New > Project... puis Android > Android project. Indiquez les proprits du projet puis appuyez sur le bouton Finish :

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

Modifier ce code comme prcdemment : HelloWorld.java package fr.unice.android; import android.app.Activity; import android.os.Bundle; import android.widget.TextView;
PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Cours/TD Introduction au SDK dAndroid


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

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

Les explications du code sont donnes dans le chapitre prcdent. Pour excuter l'application, slectionnez le menu Run > Run Configurations. Dans la boite de dialogue qui s'ouvre, double cliquez sur l'entre Android Application. Un nouveau lanceur nomm New_configuration doit apparatre, slectionnez le et renseignez le panel de droite :

Il ne vous reste plus qu' lancer l'application en appuyant sur le bouton Run.

PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Cours/TD Introduction au SDK dAndroid


5 Snake

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

Dans <android_sdk>/samples/ vous trouverez le projet Snake, il sagit dune version trs simple dun jeu galement connu sous le nom de centipede et dvelopp par Atari Inc., sorti en 1981 sur borne d'arcade. Crez un nouveau projet android avec Eclipse. Dans la fenetre new Android Project , slectionnez create project from existing source et indiquez le rpertoire <android_sdk>\samples\Snake.

5.1 Tests
Compilez, dployez puis testez rapidement le jeu (ne passez pas votre TP jouer !!). Explorez galement lensemble des sources et ressources qui composent ce projet.

5.2 Modifications
1. 2. Commencez par traduire le jeu en franais Il y a au moins 4 chaines de caractres diffrentes traduire Modifiez le jeu en utilisant les images ci-dessous pour remplacer les boules vertes qui forme le cadre

3. 4.

Modifiez votre version prcdente pour nutiliser que 2 images, lhorizontal et une des images dangles. Ajoutez des obstacles, symboliss par des boules vertes, qui sils sont mangs, a. arrtent la partie,

b. diminuent le serpent de 2 boules.

6 Exercice au choix
Choisissez une des applications suivantes et ralisez l. Le but est de crer votre application et pas de recopier du code. Nessayez pas de faire quelque chose de trop compliqu pour commencer. Dbuter avec une version simple que vous pourrez enrichir petit petit. Vous pouvez vous aider des exemples donns dans API Demos : <android_sdk>samples\ApiDemos\src\com\google\android\samples\. Vous devrez obligatoirement rendre votre ralisation la fin de la sance. Si vous le souhaitez vous pouvez travailler en binme mais pas plus.

6.1 Photo viewer


Imaginez et crez une application permettant de voir des photos. Elle devra permettre dafficher lensemble des photos dun rpertoire, davoir un mode diaporama manuel et automatique. On doit galement pouvoir retourner la photo dans un sens ou dans lautre, 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 dimaginer comment saisir des nombres de manire simple en utilisant ses doigts.

7 Remerciements
Ce cours/TP utilise trs largement larticle de Yann D'ISANTO publi sur Developpez.com ainsi que les exemples de prise en main fournis par Google ladresse http://code.google.com/intl/fr/android/intro/hello-android.html
PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Cours/TD Introduction au SDK dAndroid


8 Liens

PolytechNice Sophia S. Lavirotte G. Rey J.-Y. Tigli 2008-2009

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

PolytechNice Sophia Universit de Nice Sophia Antipolis 930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55 http://www.polytech.unice.fr/

Vous aimerez peut-être aussi