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élé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