Vous êtes sur la page 1sur 30

Java Embarquée

Enseignante : Monia Ettouil

2008/2009
Plan
Chapitre 1 : Introduction
Chapitre 2 : J2ME
Chapitre 3 : J2ME Wireless Toolkit
Chapitre 4 : CLCD
Chapitre 5 : CDC
Chapitre 6 :MIDP

2 Enseignante : Ettouil Monia 05/04/2009


Chapitre 1: Introduction
Plan
Les systèmes embarqués communicants
OOP & VM pour les systèmes embarqués
J2ME
L'économie de la mobilité
Exemple de plateforme Java embarquée

4 Enseignante : Ettouil Monia 05/04/2009


Les systèmes embarqués communicants
Équipements intelligents Serveur d’application & services

Matériel électronique embarqué


 Développement de modules applicatifs
 Déploiement des applications
 Enrichissement à posteriori
 Maintien en conditions opérationnelles

5 Enseignante : Ettouil Monia 05/04/2009


OOP & VM pour les systèmes embarqués
 Object Oriented Programming pour l'efficacité

- Contrôle de la complexité des application

- Meilleure productivité

 Machines Virtuelles pour l'abstraction


- Se reposer sur des services et non des fonctions matérielles

- Éviter les impacts de changement matériels sur le logiciel

6 Enseignante : Ettouil Monia 05/04/2009


J2ME
J2ME est la plate-forme Java pour l'embarqué et la mobilité : technologie standardisée
maitrisée par les équipes de conception et de développement de la société Im'Info.
En 2004:

 1.5 milliards de périphériques à travers le monde sont équipés de la technologie Java.

 1250 millions de téléphone mobiles :

 650 millions de station de travail

 500 millions de cartes SIM et Smart Cards

 100 millions ailleurs.

En fonction de l'application et des différents terminaux cibles, le concepteur peut s'appuyer sur
les différentes APIs disponibles avec le deux configurations de l'embarqué (CDC) ou de la
mobilité (CLDC).

7 Enseignante : Ettouil Monia 05/04/2009


L'économie de la mobilité
Les besoins :

 Carte à Puce
 Téléphone mobile
 Assistant Personnel : PalmPC, PocketPC
 Cartable Électronique : eBook,
 Appareil photo, …
 Décodeur TV Numérique
 Console de Jeu
 Terminal de paiement, guichet
 Parcmètre, radar automatique
 Portail maison
 Voiture
 Satellite
 …
8 Enseignante : Ettouil Monia 05/04/2009
L'économie de la mobilité
Les applications :

e-commerce
applications bancaires
accès services distants
optimisation des tournées de livraison
applications de maintenance
applications multimédia
jeux 3D
…

9 Enseignante : Ettouil Monia 05/04/2009


Exemple de plateforme Java embarquée

10 Enseignante : Ettouil Monia 05/04/2009


Chapitre 2: J2ME
Plan
I. Introduction
II. Présentation de J2ME
III. L'architecture J2ME
1. Les configurations
2. Les profiles

12 Enseignante : Ettouil Monia 05/04/2009


Introduction
Description :
J2ME - Java 2 Micro Edition - Version de la plate-
forme Java 2 destinée aux appareils électroniques et
terminaux intégrés (téléphones, assistants personnels,
cartes à puce).

Créateur : Sun Microsystems .

Date de saisie : 2003.

13 Enseignante : Ettouil Monia 05/04/2009


Présentation de J2ME
 J2ME utilise des machines virtuelles différentes.

 L'ensemble des appareils sur lequel peut s'exécuter une application écrite avec J2ME est

tellement vaste et disparate puisque J2ME est composé de plusieurs parties : les

configurations et les profiles .

 Chaque configuration peut être utilisée avec un ensemble de packages optionnels qui

permet d'utiliser des technologies particulières (Bluetooth, services web, lecteur de codes

barre,...).

Ces packages sont le plus souvent dépendant du matériel.

14 Enseignante : Ettouil Monia 05/04/2009


L'architecture J2ME
Pour fournir des environnements d’exécution sur mesure aux terminaux mobiles, l’architecture
J2ME se découpe en plusieurs couches :

 Les configurations : Elles définissent une plate-forme minimale en terme de services

concernant un ou plusieurs profiles donnés.

 Les profiles : Ils permettent à une certaine catégorie de terminaux d’utiliser des caractéristiques

communes telles que la gestion de l’affichage, des évènements d’entrées/sorties (pointage,


clavier, …) ou des mécanismes de persistance (Base de données légère intégrée). Ces profiles
sont soumis à spécifications suivant le principe du JCP (Java Community Process)

 Les machines virtuelles : En fonction de la cible, la machine virtuelle pourra être allégée afin

de consommer plus ou moins de ressources (KVM, CVM, …)

 Le système d’exploitation : L’environnement doit s’adapter au système d’exploitation existant

(Windows, …)

15 Enseignante : Ettouil Monia 05/04/2009


L'architecture J2ME
1. Les configurations

 Les configurations définissent les caractéristiques de bases d'un environnement

d'exécution pour un certain type de machine possédant un ensemble de caractéristiques et


de ressources similaires. Elles se composent d'une machine virtuelle et d'un ensemble
d'API de base.

 Deux configurations sont actuellement définies :

 CLDC (Connected Limited Device Configuration)

 CDC (Connected Device Configuration).

16 Enseignante : Ettouil Monia 05/04/2009


L'architecture J2ME
1. Les configurations

 La CLDC : elle concerne des appareils possédant des ressources faibles (moins de 512

Kb de RAM, faible vitesse du processeur, connexion réseau limitée) et une interface

utilisateur réduite (par exemple un téléphone mobile ou un PDA "bas de gamme"). Elle

s'utilise sur une machine virtuelle KVM. Une des améliorations les plus importantes dans

la version 1.1 est le support des nombres flottants.

 La CDC : elle concerne des appareils possédant des ressources plus importantes (au

moins 2Mb de RAM, un processeur 32 bits, une meilleure connexion au réseau), par

exemple un PDA "haut de gamme". Elle s'utilise sur une machine virtuelle CVM

17 Enseignante : Ettouil Monia 05/04/2009


L'architecture J2ME
2. Les profiles

Les profiles se composent d'un ensemble d'API particulières à un type de machines ou à

une fonctionnalité spécifique. Ils permettent l'utilisation de fonctionnalités précises et

doivent être associés à une configuration. Ils permettent donc d'assurer une certaine

modularité à la plate-forme J2ME.

Profil Configuration
MIDP 1.0 CLDC Package javax.microedition.*
Mobile Media API (MMAPI) 1.1 CLDC Permet la lecture de clips
audio et vidéo
Wireless Messaging API (WMA) 1.1 CLDC Permet l'envoi et la réception
de SMS
JDBC optional Profile CDC Base de données
18 Enseignante : Ettouil Monia 05/04/2009
L'architecture J2ME
2. Les profiles

 Le choix du ou des profils utilisés pour les développements est important car il conditionne

l'exécution de l'application sur un type de machine supporté par le profil.

 Cette multitude de profils peut engendrer un certain nombre de problème lors de l'exécution

d'une application sur différents périphériques car il n'y a pas la certitude d'avoir à disposition les
profils nécessaires.

 Pour résoudre ce problème, une spécification particulière nommée Java Technology for the

Wireless Industry (JTWI) a été développée. Cette spécification impose aux périphériques qui
la respectent de mettre en œuvre au minimum : CLDC 1.0, MIDP 2.0, Wireless Messaging API
1.1 et Mobile Media API 1.1. Son but est donc d'assumer une meilleure compatibilité entre les
applications et les différents téléphones mobiles sur lesquelles elles s'exécutent.

19 Enseignante : Ettouil Monia 05/04/2009


Chapitre 3: J2ME Wireless Toolkit
Plan
Téléchargement
Installation du J2ME Wireless Toolkit
Démarrage
Un nouveau projet

21 Enseignante : Ettouil Monia 05/04/2009


Téléchargement
Sun propose un outil pour développer des applications
J2ME utilisant CLDC/MIDP. Cet outil peut être
téléchargé à l'url suivante :
http://java.sun.com/products/sjwtoolkit/download.html

La version 2.5.2 de cet outil permet de développer des


applications utilisant MIDP 1.0.

22 Enseignante : Ettouil Monia 05/04/2009


Installation du J2ME Wireless Toolkit
Il faut exécuter le fichier sun_java_wireless_toolkit-2.5.2_01-win

23 Enseignante : Ettouil Monia 05/04/2009


Démarrage

24 Enseignante : Ettouil Monia 05/04/2009


Un nouveau projet

1. Pour créer un projet, il faut cliquer 2. Il faut saisir le nom du projet et le nom
sur le bouton "New Project" ou sur qualifié de la midlet puis cliquer sur "Create
l'option "New Project" du menu Project".
"File".

3. Pour modifier les paramètres du


projet , il faut cliquer sur le bouton «
Settings » .

25 Enseignante : Ettouil Monia 05/04/2009


Un nouveau projet
La création du projet permet la création d'une structure de
répertoires dans le sous répertoire apps du répertoire du
WTK. Dans ce répertoire apps, un répertoire est créé
nommé du nom du projet. Ce répertoire contient lui même
plusieurs sous répertoires :

C:\WTK%\apps\nom_projet\bin contient le fichier jar, jad et le fichier manifest


C:\WTK%\apps\nom_projet\classes contient les classes compilées
C:\WTK%\app\nom_projet\lib contient les bibliothèques utiles à l'application
C:\WTK%\apps\nom_projet\res contient les ressources utiles à l'application
C:\WTK%\apps\nom_projet\src contient les sources des classes

26 Enseignante : Ettouil Monia 05/04/2009


Un nouveau projet
Il faut ensuite créer la ou les classes dans le répertoire
src de l’arborescence du projet.
Pour construire le projet, il faut cliquer sur le bouton
"Build".

27 Enseignante : Ettouil Monia 05/04/2009


Un nouveau projet

Pour exécuter le projet, il suffit de choisir le type d'émulateur à utiliser et cliquer


sur le bouton "Run".
Exemple : avec l'émulateur de téléphone par défaut.

1. Cliquer sur l'application "Test".

2. Puis cliquer sur le bouton


entre les flèches.

28 Enseignante : Ettouil Monia 05/04/2009


Un nouveau projet
L'option « Clean » du menu « Project » permet de faire du ménage dans les fichiers
temporaires générés lors des différents traitements.

29 Enseignante : Ettouil Monia 05/04/2009


Chapitre 4: CLCD