1 / 13

Wireless - bevielė Bevielių technologijų apžvalga J2ME apžvalga The Connected Limited

Learning Wirelesss Java, O'REILLY, Qusay H.Mahmoud. Wireless - bevielė Bevielių technologijų apžvalga J2ME apžvalga The Connected Limited Device Configuration (CLDC) The Mobile Information Device Profile (MIDP) MIDlet-ų kūrimas. Bevielis Internetas WAN/LAN. JAV. ES. Japonija.

chione
Download Presentation

Wireless - bevielė Bevielių technologijų apžvalga J2ME apžvalga The Connected Limited

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Learning Wirelesss Java, • O'REILLY, Qusay H.Mahmoud • Wireless - bevielė • Bevielių technologijų apžvalga • J2ME apžvalga • The Connected Limited • Device Configuration (CLDC) • The Mobile Information • Device Profile (MIDP) • MIDlet-ų kūrimas

  2. Bevielis Internetas WAN/LAN JAV ES Japonija CDPD, Mobitex, DataTAC, WAP WAP i-mode (PDC-P) PROTOCOL visur PRESENTATION HDML & WMLHandheld Dynamic Markup Language WMLWireless Markup Language cHTML Compact Hypertext Markup Language J2ME MIDlet GUI Components

  3. Kokie protokolai ir kur naudojami? • imode: 60% pasaulio bevielio Interneto vartotojų • WAP: 39% pasaulio bevielio Interneto vartotojų • PALM: 1% pasaulio bevielio Interneto vartotojų • WAP gamintojų inicijuotas standartizuoti • informacijos bevieliui perdavimui • WML iniciatorius - Phone.com’s, pasiūlė HDML • HDML nei XML nei HTML analogas, • bet turi paklausą JAV • WML XML klasės kalba, • reikalauja atitikimo standartui; • turi DTD struktūrą • WAP turi savo skriptų kalbą, saugumo mechanizmą. • Optimizuotas nepralaidžiam ryšio kanalui • WAP JAV & Europoje savo galimybėmis yra • silpnesnis nei Japonijoje • i-mode inkorporuoja ir protokolą ir prezentaciją • Iš įrenginių reikalauja: • garantuoti 16 simbolių [8 2xbaitų], 6 eilutes • GIF failų formatus [87, 87a, 89a; 94 x 72 taškelių] • suderinamumą su HTML 2.0

  4. Profailai Konfigūracijos Java Virtualiosios Mašinos Operacinė Sistema • Mobilios įrangos imitatoriai • i-mode: www.pixo.com • WAP: Nokia.com, Phone.com, Yospace.com • J2ME: java.sun.com/j2me, www.idendev.com • Kalbų specifikacijos • cHTML - http://www.nttdocomo.com/i/tag/ • lineup.html • WML – http://www.wapforum.org/ • J2ME – java.sun.com/j2me • Jaunėlė sesuo: • J2ME (1999) -> J2SE -> J2EE J2ME praginos architektūra:

  5. RMI Personal M IDP PDA Foundation Peigeris Faksas CLDC CDC Mobilus telefonas Telefonas KVM CVM Host Operating System CLDC CDC Mikro Java 2 (J2ME) J2ME panaudojimo architektūra: J2ME technologijos

  6. Pirmieji žingsniai: • http://java.sun.com/j2me/ “download” • sutvarkykite savo PC: • Windows atveju: • SET PATH=%PATH%;C:\j2mewtk\bin • SET J2MEWTK_HOME=C:\j2mewtk • SET MIDPAPI=%J2MEWTK_HOME%\lib\midpapi.zip • SET J2MECLASSPATH=%J2MEWTK_HOME% • \wtklib\kenv.zip;%J2MEWTK_HOME% • \wtklib\kvem.jar;%J2MEWTK_HOME%\wtklib\lime.jar • UNIX atveju: • export PATH=$PATH:install_directory/j2mewtk/bin • export J2MEWTK_HOME=/home/qmahmoud/j2mewtk • export MIDPAPI=$J2MEWTK_HOME/lib/midpapi.zip • export J2MECLASSPATH=$J2MEWTK_HOME/ • wtklib/kenv.zip:$J2MEWTK_HOME/wtklib/ • kvem.jar:$J2MEWTK_HOME/wtklib/lime.jar • Su mėgstamu teksto redaktoriumi surinkite • “Sveika.java” failą:

  7. import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Sveikas extends MIDlet{ private Display display; TextBox box = null; public HelloMidlet() { } public void startApp() { display = Display.getDisplay(this); box=new TextBox("1-a","Sveikas!",9,0); display.setCurrent(box); } public void pauseApp() { } public void destroyApp (boolean unconditional) { } } C:\midlets> javac -g:none -d tmpclasses -bootclasspath %MIDPAPI% -classpath %J2MECLASSPATH% Sveikas.java > preverify -classpath $MIDPAPI:tmpclasses -d classes tmpclasses > jar cvf Sveikas.jar Sveikas.class

  8. Sukurkite Sveikas.jad failą: • MIDlet-1: Hello,,Sveikas • MIDlet-Name: Sveikas • MIDlet-Version: 1.0 • MIDlet-Vendor: ORA • MIDlet-Jar-URL: Sveikas.jar • MIDlet-Jar-Size: 649 • Pagaliau: • > emulator -Xdescriptor:Sveikas.jad • Rezultatas: • Programos paruošimo ciklas • Kompiliuojame • Verifikuojame • Pakuojame • Kuriame aprašomąjį .jad failą • Emuliuojame

  9. CLDC konfigūracijos reikalavimai • 160 KB - 512 KB atminties • 16 arba 32-bitų >25 Mhz procesor. • Pajungimas tinkle • Ekonomiška energetika • CLDC pateikia: • Java kabos ir JVM poaibį • java.lang,java.util, java.io • paketų klasių poaibį • javax.microedition.io paketą • Saugumo tikrinimą • JVM ypatumai: • Nėra slankaus kablelio aritmetikos • Nėra finalize() metodo • Ribotas klaidų apdorojimas, dažniausiai • klaidos atveju perkraunama • Kita Verifikacija Saugumas

  10. Malonu dirbti tinkle! Prisijungimas HTTP protokolu: Connector.open ("http://www.ora.com:port"); interneto jungties protokolu:Connector. open("socket://www.ora.com:port"); PC jungties protokolu: Connector.open("comm:0;baudrate=9600"); Bloga žinia: public class CLDCTest { float f; public static void main(String[] args) { System.out.println("Hello CLDC!"); } } Klaidos neras net preverify.exe ! Sprendimas - instaliuoti KVM ir leisti su ja. Tuomet gausite klaidos pranešimą: ALERT: Bad field signature Ateities CLDC sieks mažinti Java kalbos apribojimus, klaidų tikrinimo apribojimus, sukurti minimalų saugumo valdymą.

  11. Midlet gyvavimo ciklas startApp() kviečiama ne 1-ą kartą! Jar manifestas, Midlet rinkinys: MIDlet-Name: ShopOnLine MIDlet-Version: 1.0 MIDlet-Vendor: SELKOM MIDlet-Description: a shopping MIDlet MIDlet-Info-URL: http://www.selkom.com/shop MIDlet-Data-Size: 500 MIDlet-1: BuyMIDlet, /icons/buy.png, com.selkom.BuyMIDlet MIDlet-2: PayMIDlet, /icons/sell.png, com.selkom.Sell MIDlet MicroEdition-Profile: MIDP-1.0 MicroEdition-Configuration: CLDC-1.0

  12. Gairės programavimui: • Naudokite lokalius kintamuosius. • Laukų naudojimas lėtina spartą. • Minimizuokite metodų kvietimą. • Pvz. Neprotinga cikle naudoti length() • Venkite eilučių apjungimo. • Apjungimas provokuoja poreikį • atlaisvinti atmintį. • Minimizuokite objektų kūrimą. • Perkraunant seną klasės kintamąjį • nauju objektu kviečiamas senojo • destruktorius, tai brangu. • Pvz. Tikrinkite ar objektas yra ne null • ir atnaujinkite jums reikiamus • laukus. Naudokite objektą formalių • parametrų sąraše, o ne return konstrukcijoje. • Venkite sinchronizacijos. Jei procesas trunka • sekundės dalį - išskirkite jam atskirą giją.

  13. Midletų kūrimą ir derinimą labai palengvina J2ME Wireless Toolkit 2.0 Jo meniu:

More Related