J2ME Développement « Hello World » is back

Transcription

J2ME Développement « Hello World » is back
J2ME
Développement
« Hello World » is back
19/03/2007
Formation ITIN
Cycle de création d’une MIDlet
(1) Conception
(2) Réalisation / Écriture du code
(3) Compilation
(4) Pré vérification
(5) Construction du package
(6) Test
(7) Déploiement
2
Formation ITIN
19/03/2007
(1) Conception
Beaucoup de choses à prendre en compte
par rapport à une application classique
(interaction avec l’utilisateur par exemple)
Pour une petite application, la conception
peut être sommaire, mais pour une
application avec de nombreux écrans, il faut
une réelle réflexion.
3
Formation ITIN
19/03/2007
(2) Écriture du code
Chaque MIDlet doit hériter de la classe
abstraite MIDlet située dans le package
javax.microedition.midlet.
Au minimum, la MIDlet doit implémenter les
trois méthodes abstraites de cette classe :
• startApp()
• pauseApp()
• destroyApp(boolean unconditional)
4
Formation ITIN
19/03/2007
(2) Écriture du code
Les différents états d’une MIDlet
Lancement de l’application par
l’Application Management Software AMS
(AMS)
new()
5
Formation ITIN
19/03/2007
(2) Écriture du code
Fichier HelloWorldApp.java
6
Formation ITIN
19/03/2007
(3) Compilation
Processus différent d’une application classique
Utilisation de javac en changeant le boot classpath.
Change les classes de bases utilisées lors de la
compilation.
C:\WTK23\exo>javac -bootclasspath
..\lib\cldcapi11.jar;..\lib\midpapi20.jar
HelloWorldApp.java
Utiliser –source 1.4 –target 1.4 pour le jdk 1.5
7
Formation ITIN
19/03/2007
(4) Pré vérification
Première partie, côté développeur, d’une vérification de
la validité des classes en deux étapes.
C:\WTK23\exo>..\bin\preverify.exe -classpath
..\lib\cldcapi11.jar;..\lib\midpapi20.jar HelloWorldApp
Résultat dans le répertoire output
8
Formation ITIN
19/03/2007
(5) Construction du package
Création du manifeste pour décrire le contenu de
l’archive JAR.
MIDlet-Name: HelloWorld Suite
MIDlet-Version: 1.0.0
MIDlet-Vendor: Concept IT
MicroEdition-Profile: MIDP-2.0
MicroEdition-Configuration: CLDC-1.1
© retour a la ligne impératif
Fichier Manifest.mf à placer dans le répertoire
C:\WTK23\exo\output
9
Formation ITIN
19/03/2007
(5) Création du package
Création de l’archive JAR
C:\WTK23\exo>
jar cvfm HelloWorldApp.jar Manifest.mf *.class
Enfin, créer un fichier avec l’extension .jad pour Java
Application Descriptor. Ce fichier pointe vers l’application et la
décrit afin que l’appareil l’installe.
10
Formation ITIN
19/03/2007
(5) Création du package
HelloWorldApp.jad
MIDlet-1: HelloWorld, , HelloWorldApp
MIDlet-Name: HelloWorld Suite
MIDlet-Version: 1.0.0
MIDlet-Vendor: Concept IT
MIDlet-Jar-URL: HelloWorldApp.jar
Donner la taille exacte à l’octet près
MIDlet-Jar-Size:
MicroEdition-Profile: MIDP-2.0
MicroEdition-Configuration: CLDC-1.1
11
Formation ITIN
19/03/2007
(5) Création du package
A noter que l’on peut :
• Ajouter des attributs dont la valeur sera lue par la
MIDlet
• signer l’archive
• réaliser une « obfuscation »
12
Formation ITIN
19/03/2007
(6) Test
Pour tester, on utilise
l’émulateur disponible
dans le Wireless Toolkit
C:\WTK23\exo\output>
..\..\bin\emulator.exe
-Xdescriptor
HelloWorldApp.jad
13
Formation ITIN
19/03/2007
(7) Déploiement
Deux solutions :
• Entre votre PC et l’appareil (USB, bluetooth,
infrarouge)
• Par Internet si votre mobile peut s’y connecter
Par internet :
• Disposer d’un serveur web
• Avoir les privilèges pour ajouter deux types
MIME pour le JAR et le JAD
14
Formation ITIN
19/03/2007
(7) Déploiement – Serveur
Pour apache, voici les lignes à ajouter :
text/vnd.sun.j2me.app-descriptor jad
application/java-archive jar
Créer une page HTML
<HTML>
<a
href="HelloWordApp.jad">T&eacute;l&eacute;chargez</a>
</HTML>
Modifier le JAD
MIDlet-Jar-URL:
http://www.conceptit.fr/j2me/HelloWorldApp.jar
15
Formation ITIN
19/03/2007
(7) Déploiement – OTA Client
Simulation avec le WTK
16
Formation ITIN
19/03/2007
(7) Déploiement – OTA Client
17
Formation ITIN
19/03/2007
(7) Déploiement – OTA Client
18
Formation ITIN
19/03/2007
Environnements de développement
Sun J2ME Wireless Toolkit
• http://java.sun.com/products/sjwtoolkit/index.html
• gratuit
• interface graphique + automatisation de la
construction et du packaging de MIDlets
• solution relativement légère
Borland JBuilder (ex MobileSet )
• http://www.borland.com/jbuilder/
19
Formation ITIN
19/03/2007
Environnements de développement
Plugin Eclipse : EclipseME
• http://eclipseme.org/
• gratuit
NetBeans / NetBeans Mobility
• http://www.netbeans.org
• gratuit
• concepteur d’interfaces graphiques
20
Formation ITIN
19/03/2007