Tutorial dezvoltări wireless 1, club pentru programatori

Jonathan Knudsen și Dana Nourie

Acest articol conține tot ce trebuie să știți pentru a începe programarea Java2 în mediul Micro Edition (J2ME). Prima parte a acestui articol descrie în detaliu cum să creați un mediu de dezvoltare pe computer, cum să scrieți o aplicație J2ME simplă, cum să construiți și să o testați. Deoarece MIDlet-urile sunt difuzate pe dispozitive mobile echipate cu echipamente de comunicații, programatorul are la dispoziție cele mai puternice instrumente pentru crearea de aplicații client-server mobile. A doua parte a articolului este dedicată în întregime acestei probleme. Descrie modul de creare și depanare a părții de server a aplicației (pe care o vom numi servlet) și modul de a obține interacțiunea MIDlet cu aceasta.

De ce aveți nevoie?

Instalarea SDK-ului J2SE

C:> java -version versiune java "1.4.2_06" Java (TM) 2 Runtime Environment, Standard Edition (build 1.4.2-B03) Java HotSpot (TM) Client VM (build 1.4.2-B03, mod mixt) C >

Instalarea pachetului J2ME Wireless Toolkit

După ce completați aceste două câmpuri, vi se va solicita să setați alte setări ale proiectului. Acceptați toate setările implicite și faceți clic pe OK. Proiectul va fi creat. Panoul de text J2ME Wireless Toolkit afișează mesaje care vă spun unde sunt sursele proiectului dvs. Am văzut următorul mesaj: Crearea proiectului fișierele sursă „HelloSuite“ Locul Java în „C: WTK22appsHelloSuitesrc“ fișierele de resurse pentru Locul de aplicare în „C: WTK22appsHelloSuite \ res“ fișierele bibliotecă Locul de aplicare în „C: WTK22appsHelloSuitelib“ magazine Toolkit fiecare proiect în aplicațiile subdirector. Numele directorului părinte este identic cu numele proiectului. În cazul nostru, setul de instrumente creează un nou director c: WTK22appsHelloSuite. Fiecare proiect conține un set standard de directoare:

Bin conține MIDlet-uri compilate: costum (fișiere .jar) și un descriptor (fișier .jad); în directorul lib - toate fișierele JAR suplimentare care sunt conectate la proiect; în fișiere res - resursă, de exemplu desene sau fișiere text; în scr - textele sursă ale proiectului. Există o regulă general acceptată pentru denumirea fișierelor și a directoarelor. Să presupunem că avem codul sursă al utilizatorului class.Root, apoi pentru el trebuie să creăm un fișier scr / users / Root.java. Când creați un layout de proiect în KToolbar, se creează mai multe directoare noi:

După cum puteți vedea, J2ME Wireless Toolkit a creat clase, tmpclasses și tmplib. În cele mai multe cazuri, le puteți ignora în siguranță.

Crearea unui MIDlet

clasa publică HelloMIDlet extinde MIDlet implementează CommandListener

formă privată mMainForm;

public HelloMIDlet mMainForm = formular nou ("HelloMIDlet");
mMainForm.append (nou StringItem (null, "Hello, MIDP!"));
mMainForm.addCommand (noua comandă ("Exit", Command.EXIT, 0));
mMainForm.setCommandListener (acest lucru);
>

public void startApp () Display.getDisplay (acest) .setCurrent (mMainForm);
>

public void pauseApp () <>

public void destroyApp (boolean necondiționat) <>

public void commandAction (comanda c, Displayable s) notifyDestroyed ();
>

Faceți clic pe Ieșire pentru a ieși din MIDlet. Închideți emulatorul sau apăsați pe Escape pentru a închide sesiunea emulatorului.

Despre ceea ce este ascuns de ochii noștri

Să ne întoarcem și să vorbim despre ceea ce face J2ME Wireless Toolkit pentru tine. Toolkit automatizează câțiva pași similari care trebuie să faceți de fiecare dată. Ce se întâmplă când faceți clic pe butonul Build? Setul de instrumente găsește toate .java fișierele în directorul de proiect și să le scr compilează. Aceasta nu este o compilație obișnuită: codul sursă trebuie să fie compilate în MIDP înainte de a putea fi compilat în J2SE. Această abatere este explicată prin utilizarea clasei java.lang.System în MIDlet. Această clasă are API-uri diferite în J2SE și MIDP. În cazul în care setul de instrumente compilează clasa MIDlet, nu aveți nevoie să utilizați versiunea J2SE și MIDP java.lang.System. Puteți alege propria versiune, folosind cheia -bootclasspath comanda javac, dar sunt de acord că este mai ușor să lase setul de instrumente și nu vă faceți griji despre asta. După compilarea claselor MIDP trebuie să fie verificate (verificate) înainte de a putea fi executate pe dispozitive MIDP. J2SE are un control bytecode care verifică fișierele .class înainte de a fi încărcate. În lumea MIDP, testul este împărțit în două faze. Setul de instrumente efectuează o verificare inițială la timp a construi, atunci când rula pe dispozitivul țintă, sistemul efectuează un al doilea control la încărcarea claselor. Trebuie să efectuați o inițială verificați-vă folosind linia de comandă instrument preverify, dar este mult mai ușor să se stabilească toate piesele de pe Toolkit. În cele din urmă, MIDlet-urile sunt compilate în suite MIDlet pentru a fi transmise către dispozitivul țintă. Acest proces include ambalarea în suitele JAR MIDlet, fișiere de resurse și câteva informații specifice. Iopyat toate acestea este mai bine pentru a termina J2ME Wireless Toolkit. Pentru a crea o suită MIDlet, selectați Proiect | Pachet din meniu. Drept rezultat, fișierele .jad și .jar vor fi create în folderul bin.

Aveți deja reprezentări rudimentare ale programării MIDP și aveți toate programele necesare pentru a crea suitele MIDlet, ceea ce este în sine destul de progresiv. Cu toate acestea, MIDlet-urile client sunt doar o parte a imaginii. Cele mai interesante MIDlet-uri folosesc capacitățile lor de comunicare și se conectează la orice servicii de rețea. În cea de-a doua parte a acestui articol, veți învăța cum să instalați, să configurați și să rulați mediul serverului. Veți scrie un servlet Java simplu și modificați MIDletul astfel încât să se conecteze la acest servlet.

documentația de utilizare, care vine cu J2ME Wireless Toolkit include informații utile cu privire la aplicarea, configurați ciclul de atribute MIDlet-dezvoltare și, în fișierele de toate directoarele instalate, tipurile de dispozitive și compatibilitatea acestora. În plus, acesta oferă instrucțiuni pentru configurarea și utilizarea Toolkit Wireless emulator în modul linie de comandă.