J2ME : Développement d`applications Java pour terminaux mobiles

Travail de diplôme Roggo Jean-Christophe
- 1 -
J2ME
Développement d’applications Java pour
terminaux mobiles
Travail de diplôme Roggo Jean-Christophe
- 2 -
1. J2ME et l’informatique des terminaux mobiles ............................5
1.1. Les applications embarquées.................................................................. 5
1.1.1. Typologie des applications...................................................................................... 6
1.2. J2ME et les systèmes embarqués............................................................. 7
1.2.1. Tour d’horizon de la technologie J2ME....................................................................... 8
1.2.1.1. Les machines virtuelles......................................................................................9
1.2.1.2. Les configurations ..........................................................................................11
1.2.1.3. Les profils....................................................................................................11
1.2.1.4. Les packages optionnels ..................................................................................13
1.2.1.5. La pile JSR 185 JTWI (Java Technology for the Wireless Industry).................................16
1.2.1.6. Les autres API Java pour terminaux embarqués.......................................................17
2. La configuration CLDC......................................................19
2.1. Les limitations de CLDC ...................................................................... 19
2.1.1. Support de la virgule flottante................................................................................ 19
2.1.2. Internationalisation des applications ....................................................................... 19
2.1.3. Support des propriétés d’environnement.................................................................. 21
2.1.4. Limitations diverses............................................................................................. 21
2.2. La sécurité dans CLDC ....................................................................... 22
2.2.1. Prévérification des fichiers de classe....................................................................... 22
2.2.2. Le modèle de sécurité Sandbox.............................................................................. 23
2.3. Les classes de CLDC ......................................................................... 23
2.3.1. Les classes héritées de J2SE................................................................................. 23
2.3.2. Les classes spécifiques de CLDC ........................................................................... 24
3. Le profil MIDP ................................................................27
3.1. Le MIDlet........................................................................................ 27
3.1.1. Cycle de vie d’un MIDlet........................................................................................ 27
3.1.2. L’accès aux attributs du fichier *.jar......................................................................... 29
3.2. L’interface utilisateur........................................................................... 30
3.2.1. Les principes de l’interface utilisateur MIDP.............................................................. 30
3.2.2. Les classes d’affichage ........................................................................................ 31
3.2.2.1. La classe Display ...........................................................................................31
3.2.2.2. La classe Displayable......................................................................................32
3.2.2.3. La classe Screen ...........................................................................................32
3.2.2.4. La classe Canvas...........................................................................................33
3.2.3. L’interface utilisateur de haut niveau ....................................................................... 34
3.2.3.1. L’interface Choice ..........................................................................................35
3.2.3.2. La classe List................................................................................................36
3.2.3.3. La classe Item...............................................................................................37
3.2.3.4. La classe Form..............................................................................................37
3.2.3.5. La classe ChoiceGroup....................................................................................38
3.2.3.6. La classe TextField.........................................................................................38
3.2.3.7. La classe DateField ........................................................................................39
3.2.3.8. La classe Gauge............................................................................................40
3.2.3.9. La classe ImageItem .......................................................................................41
3.2.3.10. La classe StringItem......................................................................................42
3.2.3.11. La classe TextBox ........................................................................................42
3.2.3.12. La classe Alert.............................................................................................42
3.2.3.13. La classe Ticker...........................................................................................44
Travail de diplôme Roggo Jean-Christophe
- 3 -
3.2.4. La gestion des évènements ................................................................................... 44
3.2.4.1. La classe Command .......................................................................................44
3.2.4.2. L’interface commandListener .............................................................................45
3.2.4.3. L’interface ItemStateListener..............................................................................46
3.3. Le stockage persistant des données........................................................ 47
3.3.1. Le package RMS ................................................................................................. 47
3.3.2. Le Record Store.................................................................................................. 47
3.3.2.1. La classe RecordStore.....................................................................................48
3.3.2.2. L’interface RecordComparator............................................................................49
3.3.2.3. L’interface RecordFilter ....................................................................................49
3.3.2.4. L’interface RecordEnumeration...........................................................................49
3.3.2.5. L’interface RecordListener ................................................................................50
4. J2ME en pratique............................................................51
4.1. Les outils........................................................................................ 51
4.1.1. L’environnement de développement........................................................................ 51
4.1.1.1. J2ME Wireless Toolkit 2.1.................................................................................52
4.1.2. Le terminal mobile cible........................................................................................ 55
4.1.2.1. Le terminal mobile Sony Ericsson t610..................................................................55
4.1.3. L’outil de transfert de l’application .......................................................................... 56
4.2. L’application CurrencyConverter............................................................. 57
4.2.1. Le client J2ME .................................................................................................... 58
4.2.2. Le serveur PHP................................................................................................... 60
4.2.3. Le Web service ................................................................................................... 60
5. Conclusion....................................................................61
Travail de diplôme Roggo Jean-Christophe
- 4 -
Avant-propos
L’objectif de ce dossier est de présenter la technologie Java 2 Micro Edition
(J2ME). Cette technologie, proposée par Sun Microsystem, permet de développer
des applications pour les terminaux embarqués en utilisant le langage Java.
Les trois premières parties de la présente étude fournissent les notions
théoriques nécessaires à une compréhension approffondie de la technologie
J2ME. La dernière partie, quant à elle, présente un prototype réalisé au cours de
cette étude.
Un cd rom ainsi que trois documents contenant des exemples pratiques sont
annexés.
Le cd rom contient tous les fichiers et logiciels nécessaires pour mettre en œuvre
les différents exemples pratiques.
Travail de diplôme Roggo Jean-Christophe
- 5 -
Cette première partie débute par une présentation du panorama des applications
pour terminaux embarqués. Vous trouverez ensuite une description de la
technologie J2ME et de la place qu’elle occupe dans le paysage de la mobilité.
1. J2ME et l’informatique des terminaux mobiles
1.1. Les applications embarquées
Un système embarqué (embedded system), est un système informatique
autonome interagissant en temps réel avec le monde physique de manière
généralement invisible. Il est constitué de un ou plusieurs processeurs
accompagnés de logiciels [DEL02].
Initialement réservés aux grands domaines technologiques classiques comme le
spatial, le nucléaire ou l’aéronautique, les systèmes embarqués apparaissent
désormais massivement à l’échelle de l’individu et envahissent tous les domaines
de sa vie privée et professionnelle : téléphones mobiles, assistants personnels,
cartes à puces, appareils multimédias, automobiles, domotique, surveillance
médicale, …
Le marché des systèmes embarqués est en pleine explosion, puisqu’il
représentait 40 milliards d’euros en 2002 et que sa croissance est d’environ 20%
par année (Durlacher Research). Les secteurs les plus porteurs sont le transport,
le multimédia, la téléphonie, la monétique, la transitique (logistique limitée aux
liaisons internes d’une entreprise) et la banque.
Les téléphones mobiles et assistants personnels contribuent de manière non
négligeable à la croissance du marché des terminaux embarqués. Selon un
rapport publié par la société d'étude britannique Canalys, le marché mondial des
terminaux mobiles (téléphones mobiles, PDA, Smartphones …) affiche une
croissance de 41 % pour le premier trimestre 2004 (par rapport au premier
trimestre 2003) [JNE04]. Le tableau présenté ci-dessous illustre ce phénomène
de croissance (source Canalys).
Le marché mondial des terminaux mobiles au 1er trimestre 2004
Constructeur Ventes
(en millions d'unités) Part de marché Evolution des ventes (par
rapport au premier
trimestre 2003)
Nokia 1,67 28,2 % +85 %
PalmOne 0,99 16,8 % -9 %
HP 0,57 9,7 % +29 %
RIM 0,37 6,4 % +301 %
Fijutsu 0,36 6,1 % +507 %
Motorola 0,31 5,3 % +12 748 %
Sony Ericsson 0,26 4,4 % +19 %
Sony 0,20 3,4 % -45 %
Dell 0,16 2,7 % -3 %
Siemens 0,08 1,5 % +470 %
Autres 0,90 15,5 % +10 %
Total 5,93 100 % +41 %
1 / 78 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !