Tutoriel Android : Mise en place de l’environnement de développement Android 1.6r1 Eclipse Galileo (3.5)
Posté par Anthony Dahanne, le 22/10/2009.Ce tutoriel a pour objectifs de mettre en place un environnement de développement Android 1.6 sous Eclipse.
A la fin de ce tutoriel vous saurez :
- Mettre en place Eclipse 3.5 avec le plugin Android
- Créer une application Android
- Déployer une application Android dans l’émulateur de votre choix
Installer Eclipse Galileo
Rien de plus simple, il suffit de le télécharger à http://www.eclipse.org/downloads/ et de choisir la version “Eclipse IDE for Java EE Developers” pour votre système d’exploitation.
Une fois téléchargé, pour l’installer il vous suffit de le dézipper !
Installer Android SDK 1.6r1
Commencez par vous rendre à l’url : http://developer.android.com/sdk/ et choisissez la version correspondant à votre plateforme.
Pour l’installer, c’est comme Eclipse, il suffit de dézipper l’archive dans le répertoire de votre choix; dans le cadre de ce tutoriel, j’appellerai ce répertoire $ANDROID_HOME_DIRECTORY.
Vous pourrez ainsi avoir accès aux outils android dans toute fenêtre de commande.
Pour tester, ouvrez une fenêtre de commande : Démarrez -> Executer->cmd, et tapez adb, vous devriez avoir ceci :
C:\Documents and Settings\anthony.dahanne>adb Android Debug Bridge version 1.0.20 -d - directs command to the only connected USB device returns an error if more than one USB device is present. -e - directs command to the only running emulator. returns an error if more than one emulator is running. -s - directs command to the USB device or emulator with the given serial number -p - simple product name like 'sooner', or a relative/absolute path to a product out directory like 'out/target/product/sooner'. If -p is not specified, the ANDROID_PRODUCT_OUT environment variable is used, which must be an absolute path. devices - list all connected devices
Si vous ne voulez pas / pouvez pas mettre à jour votre chemin, vous pourrez toujours accéder à l’outil adb par exemple en tapant dans la fenêtre de commande : $ANDROID_HOME_DIRECTORY/tools/adb (en remplaçant ADB_HOME_DIRECTORY par votre répertoire d’installation du SDK Android)
Installation du plugin Eclipse Android SDK
Démarrez Eclipse, et créez un nouveau workspace en choisissant un répertoire au choix (le workspace contiendra tous vos projets)
Juste après, rendez vous dans “Help->Install new software…”
Cliquez sur “Add new site” pour ajouter le site du plugin Android : choisissez le nom que vous souhaitez, et l’url suivante : https://dl-ssl.google.com/android/eclipse/
Ceci étant fait, sélectionnez les 2 cases : DDMS et android tools for eclipse, cliquez sur next, acceptez la licence et c’est fini !
Ecllipse vous demande de redémarrer, acceptez, et au redémarrage d’Eclipse configurez votre plugin Android en allant dans Window->Preferences->Android, de là indiquez votre $ANDROID_HOME_DIRECTORY
Vous pouvez maintenant créez un nouveau projet Android 1.6
Au redémarrage d’Eclipse, il vous sera demandé de configurer Eclipse pour qu’il sache où se trouve le SDK Android :
Pour cela, vous devez vous rendre dans Window->Preferences->Android et indiquer le répertoire de votre SDK
C’est bon, vous êtes prêt pour créer votre premier projet Android !
Création de votre premier projet HelloAndroid
Nous allons pour cela utiliser le plugin eclipse Android.
Cliquez sur File->New->Android Project (ou alors File->New->Project et sélectionner Android Project)
Rentrez les informations de votre projet, en particulier, choisissez la version 1.6 de l’API (la plus récente à ce jour, Donut); cependant, sachez que tous les possesseurs de téléphone Android n’ont pas encore mis à jour vers Donut, vous pouvez alors choisir la version 1.5 (Cupcake) pour un maximum de compatibilité
Cliquez sur “Finish”, le plugin vous génère alors votre projet, dans mon cas HelloAndroid
Nous allons commencer par observer la classe HelloAndroid.java, qui constitue l’unique activité (considérez pour l’instant qu’il s’agit d’un écran; est une activité une classe qui hérite de Activity) de votre projet :
package com.valtech.helloandroid; import android.app.Activity; import android.os.Bundle; public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
Or le projet est open source, il serait dommage de se passer d’une telle aide !
Pour voir le code source sous eclipse, telechargez ce fichier zip : http://rgruet.free.fr/public/android-1.5-cupcake-src.zip (il contient les sources d’Android 1.5) et renommez le en sources (sans suffixe de nom de fichiers)
Ensuite, copiez le dans $ANDROID_HOME_DIRECTORY/platforms/android-1.5
Et c’est fini ! Essayer donc un ctrl+click dans Eclipse sur n’importe quelle classe du framework Android, et vous verrez le code source ! (après éventuellement un redémarrage d’Eclipse)
Idem pour la version 1.6, vous pouvez télécharger les sources de cet emplacement : http://rgruet.free.fr/public/android-1.6_r1-donut-src.zip (à renommez en sources dans $ANDROID_HOME_DIRECTORY/platforms/android-1.6)
Le code de HelloAndroid.java stipule qu’à la création de l’activité, on va définir son contenu avec la mise en page (layout) main.
public final class R { public static final class attr { } public static final class drawable { public static final int icon=0x7f020000; } public static final class layout { public static final int main=0x7f030000; } }
Toutes les valeurs définies dans ce fichier représentent des ressources, souvent définies sous la forme de fichiers XML (ainsi la valeur main correspond à main.xml dans le dossier res/layout)
Pourquoi est ce fait ainsi ? car les ressources sont traduites en code compilé, ce qui optimise l’empreinte mémoire de vos applications.
Le layout (mise en page) de votre activité est donc définie dans res/layout/main.xml :
Je vous laisse retrouver la valeur de @string/hello dans les ressources !
On voit ici que un TextView (un label) a été défini, ainsi, lors du déploiement de HelloAndroid, on devrait s’attendre à voir un écran avec un label
D’ailleurs pour que cette activité soit activée, elle doit être référencée dans le manifest de votre projet : AndroidManifest.xml
Vous l’avez compris, le manifest est le fichier le plus important de votre projet : il référence toutes vos activités (et bien plus !)
Nous pouvons maintenant passer au déploiement du projet dans un émulateur.
Déploiement de votre projet Android
Votre projet peut être déployé sur un téléphone équipé d’Android, ou sur un émulateur.
Pour celà, cliquez droit sur votre projet et sélectionnez “Run as Android Application.”
Comme il s’agit de votre premier déploiement, le plugin Android vous propose de créer une nouvelle instance d’émulateur: un AVD (Android Virtual Device) :
Une fois votre AVD paramétrée, cliquez sur “Create Avd”, votre AVD est créée, vous pouvez alors la sélectionner pour déployer votre projet sur cette dernière ! (après éventuellement avoir fait un “Refresh”)
En redémarrant Eclipse, et en cliquant sur l’icone du téléphone, vous pourrez créer une nouvelle AVD qui correspondra à une cible Android avec une plus haute résolution que celle d’un téléphone: idéal pour tester vos applications sur plusieurs cibles différentes !
Pour modifier votre configuration de lancement, allez dans Run-> Run configurations …, et sous l’onglet Target de votre projet, vous pourrez choisir quelle sera l’émulateur à lancer par défaut !
Félicitations ! Votre premier projet, HelloAndroid, est déployé dans votre émulateur !
Références :
- La documentation Android officielle pour les développeurs
- La documentation complete de l’Android Virtual Device (AVD)
- Le site officiel du market place Archos, appslib.com
- Un des blogs qui explique en détail comment faire apparaître les sources contenues dans android.jar











November 15th, 2009 at 11:43 pm
Tout est ok mis à part l’installation du sdk android dans lequel le repertoire platform est vide (android sdk 1.5,1.6,2.0), pour résoudre après l’étape “Installation du plugin Eclipse Android SDK”, dans eclipse ; menu Windows/Android SDK and AVD Manager, il est possible de les telecharger section “Available Package”.
@+
November 16th, 2009 at 12:31 am
Merci Yannick pour cette info, le SDK a récemment évolué afin de laisser à l’utilisateur le choix de la version désirée (1.1, 1.5, 1.6, 2.0) pour développer.
November 28th, 2009 at 10:18 am
Merci pour ce tuto qui m’a bien aidé à me lancer dans le dev d’une appli pour archos. J’ai bossé pendant un bon mois, et me suis enfin décidé à acheter un archos7. Malheur, le numéro 7 ne permet pas de lancer les fichier.apk, en tout cas pas sans avoir fait une manip que j’ignore (et que j’espere trouver quelque part). Le type de fichier est inconnu… J’ai même téléchargé le fichier appslib.apk pour “vérifier”. Celui ci n’est pas non plus reconnu.
Aurais-je loupé une étape?
Merci par avance pour ta réponse.
Bonne soirée
fourky
November 29th, 2009 at 1:52 am
Salut !
As tu essayé d’aller dans menu->paramètres->Applications et de cocher “Sources Inconnues” ?
bon courage
December 4th, 2009 at 7:19 am
ok j’essaye ce soir, merci du conseil. En fait comme un boulet, je croyais que l’archos7 tournait sous Android, mais c’est seulement l’archos5IT qui tourne sous Android. L’archos 5 et 7 tournent sous “Linux”. Et les .apk sont pour Android… mais c’est domage quand meme de pas pouvoir installer de sdk sur ce petit jouet qui tourne sous Linux…
December 25th, 2009 at 4:48 am
Bonjour à tous,
Je viens d’acheter un archos5IT pour pouvoir faire tourner mon appli dessus… mais c’est pas gagné.
J’ai développé une application sous eclipse pour mon archos5IT. Tout va bien sur l’émulateur, mais quand je veux tester en direct sur mon archos, l’installation ne marche pas… Du coup j’essaye de faire tourner un HelloWorld bête mais j’ai toujours l’erreur suivante à l’installation: “Application not installed: HelloWorld could not be installed on this device”
une idée?
bonne soirée
fourky
December 30th, 2009 at 10:39 pm
Which Word Press theme are you using?
January 21st, 2010 at 1:14 am
C’est du bon boulot! Enfin un tuto clair et net!
Bravo!
June 24th, 2010 at 4:25 am
Je viens de tomber sur votre blog très intéressant