Kort om MIDlet
MIDlet - resourcer Kernen er en begrænset java-maskine: Connected Limited Device Configuration Device afhængig: CLDC 1.0 eller CLDC 1.1 Hertil kommer nogle standart udvidelser til f.eks håndterng af skærm (lcdui) Device afhængig: MIDP 1.0 eller MIDP 2.0 Hertil kan komme yderligere udvidelser, der afhænger af device
MIDlet – resourcer udvidelser Device afhængige udvidelser, hvor nogle er fra MIDP 1.0: Wireless Messaging API 1.1 (JSR-120) Bluetooth 1.0 (JSR-82) Mobile 3D Graphics API 1.0 (JSR-184) FileConnection Optional Package 1.0 (JSR-75 FC) PIM Optional Package 1.0 (JSR-75 PIM) Nokia UI API 1.1 Mobile Media API 1.1 (JSR-135)
MIDlet Suite MIDlet pakkes og deployes som jar-filer Flere MIDlets kan pakkes i samme jar-fil og udgør en MIDlet Suite MIDlet kører også i en ”sandkasse” og har ikke adgang til andet end egne resourcer. MIDlet i samme Suite har fælles resourcer. Specielle klasser kan give adgang til f.eks. Fil- system og hermed til f.eks medie-filer, men ikke telefonbog, der ikke er placeret i dette filsystem.
MIDlet deployment MIDlet deployes som en jar-fil som man også kan med en applet (men pak ikke f.eks source med) Ud over jar-filen vil der også være en beskrivelse af jar-filen i form an en JAD fil, der indeholder information om CDLC og MIDP version samt resourcer. Ofte hentes først JAD-filen der kan chekkes forud for JAR-filen. Eclipse kan bygge JAD- og JAR-filen (j2me package)
MIDlet klassebibliotker Da MIDlet bygger på CDLC 1.0 eller CDLC 1.1 er en del af de standard klasser (fra java-kernen) der kan bruges nedskaleret, så der ikke er fuld funktionalitet, ligesom andre klasser heller ikke er så omfangsrige i funktionalitet som j2se. Nogle begrænsninger ligger i: Der kan kun være ”skærmbillede” knyttet til MIDlet’en af gangen. Der kan kun knyttes én CommandListener til en ”skærm” af gangen.
MIDlet klassen En MIDlet starter ved af systemet laver et object og ikke ved at starte i main-metoden. MIDlet’en knyttes til en event-model, hvor der skal implementeres 3 metoder for event- håndtering. void startApp() throws MIDletStateChangeException void pauseApp() void destroy<App(boolean arg0) throws MIDletStateChangeException MIDlet’en vil ved start få kald startApp metoden, der kan sammenlignes med init-metoden i en applet eller PageLoad i et aspx-program.