• Aucun résultat trouvé

[PDF] Cours et travaux dirigés sur le kit de développement logiciel Android (SDK) - Free PDF Download

N/A
N/A
Protected

Academic year: 2021

Partager "[PDF] Cours et travaux dirigés sur le kit de développement logiciel Android (SDK) - Free PDF Download"

Copied!
8
0
0

Texte intégral

(1)

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.

(2)

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.

(3)

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.

(4)

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 :

(5)

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;

(6)

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 :

(7)

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

(8)

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

Figure

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

Références

Documents relatifs

Cécile Asanuma-Brice, «  Fukushima, l’impossible retour dans les villages de l’ancienne zone d’évacuation : l’exemple d’Iitate  », Géoconfluences, octobre

Our overall proposed scheme, which combines random linear network coding of packets and G- SACKs, provides an improvement, with homoge- neous (resp. 150.6%, 78.4% and 56.2%) in

Despite the reported capacity of PLGA microparticles to activate macrophages for tumor necrosis factor alpha and interleukin-1 ␤ production in vitro (38), CH8/PLGA efficacy was not

décroître l'efficacité de l'antibiotique, en raison de la sélection naturelle de bactéries résistantes. Dans ce contexte, les producteurs d'antibiotiques ne s'intéressent qu'au

Keywords : Monetary Policy, Macroprudential Policy, News Shocks, Durable Goods, Sectoral Comovement, Exchange Rate Fluctuations, Labour Market Adjustments, Panel Data Estimation,

que de plus amples recherches devraient être menées pour savoir s’il est vrai que les agresseurs négateurs utilisent des façons différentes d’ approcher les

On peut, de façon sommaire, distinguer des sociétés où, sous certaines conditions, les adolescents des deux sexes accèdent assez vite à une vie sexuelle complète,

Elle nous présente les personnes avec qui elle a vécu, elle décrit leurs réactions à son égard, leurs joies et leurs peines, elle rapporte diverses anecdotes dont elle a été