Présentation du SDK Android

Exemples d'applications

Cette page donne quelques exemples de codes simples à mettre en œuvre.

Réagir aux événements avec des listeners

Comme pour les logiciels écrits en java, Android réagit aux événements déclenchés par l'utilisateur, et exécute les écouteurs adaptés. Nous avons déjà vu le code ci-dessous dans la page précédente :

Les listeners

Nous ajoutons ici un OnClickListener sur le bouton "btn_increment" et redéfinissons la méthode "onclick".

Il existe beaucoup d'autres types de listeners : il est ainsi possible de réagir à un clic long avec OnLongClickListener, à l'appui sur une touche du clavier avec OnKeyListener, ou encore à n'importe quelle action sur l'écran (OnToutchListener).

Pour gérer au mieux la place sur le petit écran d'un smartphone, l'utilisation d'un menu peut s'avérer utile. Voici le code à utiliser pour faire apparaître un menu à deux entrées.

Code pour afficher un menu
Affichage du menu

On définit ici les deux options dans la méthode "onCreateOptionsMenu", puis les actions à effectuer lors du clic sur une des options. La méthode "startActivity" permet de démarrer une nouvelle activité, tandis que la méthode "Toast.makeText()" affiche un message à l'écran sous la forme d'un petit pop-up. L'image de gauche est le résultat du code ci-dessus.

Il est aussi possible d'associer une image aux différents éléments du menu, permettant ainsi d'améliorer le rendu visuel :
Menu avec icônes

Utiliser le Text-To-Speech

Le Text-To-Speech (TTS) permet, à l'aide d'un synthétiseur vocal, d'énoncer un texte. Android est doté de cette technologie, qui est utilisée notamment dans les applications GPS pour le guidage vocal, ou encore pour lire ce qui est affiché à l'écran pour les déficients visuels.

Le code ci-dessous montre comment utilise le TTS pour énoncer l'heure actuelle :

Code pour énoncer l'heure à haute voix

Lors du clic sur le bouton "btn_speakHour", on initialise la fonctionnalité TTS. Une fois chargée, la fonctionnalité appelle la méthode "onInit" située ici dans la même classe. C'est cette méthode qui "fait parler" le téléphone grâce à la méthode tts.speak("texte").

Autres APIs

Le SDK de Google fournit de nombreuses APIs (Application Programming Interface) permettant d'accéder à l'ensemble des fonctionnalités des appareils mobiles modernes : on trouve ainsi une API pour contrôles les capteurs de température, luminosité, champ magnétique, orientation, etc. grâce au package android.hardware.Sensor.

Le package android.location contrôle les éléments permettant la géo-localisation, notamment le GPS.

Citons aussi android.net.wifi qui sert à activer / désactiver le wifi, à afficher les réseaux disponibles, l'adresse IP lorsqu'on est connecté, l'état de la connexion, etc.

Une autre API permet de gérer l'ensemble des services téléphoniques, comme l'état du téléphone, l'envoi de SMS, la gestion des appels... (android.telephony), une autre sert à créer des interfaces en 2 et 3 dimensions à l'aide d'OpenGL (android.opengl).


Vincent Barberis
ESIPE-MLV -- IR3
Année 2011 - 2012