Hello World, Hello Android !
Et nous enchaînons avec l’incontournable « Hello World ! »
Avant de continuer, assurez-vous d’avoir lu les deux tutoriaux précédents :
Installer la plateforme Android
Avant de commencer, il faut s’assurer d’avoir installé au moins une des plateformes Android comme expliqué dans le dernier tutoriel Installation Android SDK sous Windows
Si vous hésitez quelle plateforme choisir, sélectionnez la dernière mise à jours. Vous aurez peut-être à en sélectionner d’autres prochainement. Il faut savoir dès maintenant que le choix de la plateforme sera décisif en terme de compatibilité de votre application avec les différents smartphones sur le marché.
Ceci dit, si vous voulez tester votre application sur votre smartphone, téléchargez la plateforme correspondante à la version Android que vous avez.
Créer un AVD
Afin de tester notre application, nous allons utiliser l’émulateur Android. In faudra donc créer un Android Virtual Device (AVD). Un AVD décrit les paramètres systèmes et les composants de notre émulateur.
Pour créer un AVD :
- Lancez Eclipse
- Allez sous « Window > Android SDK and AVD Manager«
- Sélectionnez « Virtual Device » dans le panneau à gauche
- Cliquez « New » -> La boite de dialogue « Create New AVD » apparaîtra
- Tapez le nom de notre AVD, « hello_avd » par exemple
- Choisir la cible (the target). La cible est la version de la plateforme Android SDK que nus avons téléchargé.
- Ignorez les autres champs pour le moment et cliquez sur « Create AVD«
Créer un nouveau projet Android
Après avoir créé un émulateur Android, passons à la création du projet sous Eclipse.
- Lancez Eclipse et allez sous File -> New->Project. Si le ADT plugin for Eclipse a été correctement installé (voir l’article Installation Android SDK sous Windows ) la boite de dialogue affichera un dossier « Android » sous lequel nous pourrons sélectionner « Android Project« . Si ce n’est pas le cas, vérifier l’installation du plugin.
- Sélectionnez donc « Android Project » et cliquez sur Next.
- Renseigner les détails à propos de votre projet comme suit :
- Project name: HelloAndroid
- Application name: Hello, Android
- Package name: com.androideur.helloandroid (ou votre propre namespace)
- Create Activity: HelloAndroid
- Cliquez Finish
Explication des paramètres du projet
- Project name : C’est le nom du projet Eclipse. Tous les fichiers seront créés sous un dossier portant le même nom
- Application Name : C’est le nom de l’application tel qu’il va apparaître sur le smartphone Android
- Package Name : C’est le package namespace (suivant les mêmes règles de programmation Java) qui regroupera tout le code source que nous allons écrire. D’une manière générale, le nom du package doit être unique. Dans notre exemple nous avons utilisé com.androideur. Rappelez-vous de mettre le nom de votre organisation par exemple quand vous développez votre propre application.
- Create Activity : C’est le nom de la stub class qui va être générée par le plugin. Elle va être une sous-classe de la classe Activity d’Android. Comme vous remarquez, la création est optionnelle mais il faut savoir qu’une Activity est la base de la quasi-totalité des applications.
- Min SDK Version : Cette valeur définit le niveau minimum de l’API requise par l’application. Vous trouverez ici plus de détails.
- Le checkbox « Use default location » vous permet de changer le dossier dans lequel vos vichiers seront enregistrés
- Build Target : cette valeur doit être renseignée automatiquement en se basant sur le Min SDK Version. Comme nous avons dit le choix sera décisif en terme de compatibilité plateforme. Rappelons qu’une application Android compilée sur une version antérieure fonctionnera toujours avec les dernières mises à jours de l’API. L’inverse n’est pas vrai.
Examinons le code
Notre projet est maintenant prêt. Examinons le code en navigant dans le Package Explorer à gauche. Ouvrons le fichier HelloAndroid.java situé sous HelloAndroid->src->com.androideur.helloandroid qui devra ressembler à ça :
package com.androideur.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);
}
}
Notez que cette classe est basée sur la classe Activity que nous avons mentionné tout à l’heure. Une Activity est une entité de l’application permettant d’exécuter des actions. Une application peut avoir plusieurs Activities, mais l’utilisateur interagit avec elles une à une.
La méthode onCreate() sera appelée par le système Android lors du démarrage de l’application. C’est donc l’endroit idéal pour faire toutes les initialisations et préparer l’interface utilisateur. Cependant, il n’est pas obligatoire d’avoir une interface utilisateur pour chaque Activity.
Création de l’Interface Utilisateur (UI)
Modifions le code comme suit :
package com.androideur.helloandroid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hello, Android");
setContentView(tv);
}
}
Une Interface Utilisateur Android est composée d’une hiérarchie d’objets appelé Views (Vue). Une View est un objet à dessiner, utilisé comme un élément de l’interface utilisateur. Cela peut être un bouton, une image ou tout simplement du texte comme dans notre cas. Chacun de ces objet est une sous-classe de la classe View. Et la sous-classe qui prend en charge le texte est TextView.
Nous venons de créer un TextView avec le constructeur de classe qui prend comme paramètre une instance Context Android. Un Context fournit des services comme l’accès aux ressources, l’obtention d’un accès à la base de données, etc… La classe Activity hérite du Context et comme la classe HelloAndroid est une sous classe Activity, elle est donc un Context. C’est pourquoi on peut passe un « this » comme référence au TextView.
Nous avons après défini le contenu texte avec setText().
Finalement, nous avons passé le TextView à setContentView() pour l’afficher comme un contenu de l’interface utilisateur de l’Activity. Bien entendu, si on ne fait pas appel à cette méthode, le système affichera un écran vide.
C’est tout. Exécutons notre application maintenant.
Exécution de l’application
Le plugin Eclipse facilite l’exécution de vos application:
- Sélectionnez Run -> Run
- Sélectionnez « Android Application »
Le plugin crée automatiquement une configuration d’exécution pour votre application et lance l’émulateur Android. Attention, il faut patienter plusieurs minutes (tout dépend de votre configuration matérielle). Ca risque d’être vraiment lent. Après le démarrage du système, le plugin installe la nouvelle application et exécute notre Activity par défaut. Et voici le résultat :

Félicitations ; vous venez d’exécuter votre première application Android que nous allons perfectionner un peu prochainement.
Join the forum discussion on this post