J2MEJ2MEMartin OrlichMartin Orlich
JAVAJAVAProgramovací jazyk Java je poskytován firmou Sun Microsystems ve třech vydáních:
• Java 2 Standard Edition
• Java 2 Enterprise Edition
• Java 2 Micro Edition
J2ME (Java 2 Micro Edition) představuje podmnožinu jazyka Java 2 Standard Edition. Jeho použití je zaměřeno na malá bezdrátová zařízení s omezeným paměťovým prostorem. Z toho důvodu má ve srovnání s J2SE vytvořen menší virtuální stroj a omezeny API funkce.
Základní vlastnosti pro jednotlivá zařízení jsou určeny konfigurací J2ME. Podmnožiny programového vybavení pro danou úroveň zažízení jsou dány profily.
Java 2 Platform, Micro Edition Java 2 Platform, Micro Edition (J2ME)(J2ME)
KVM
Operační systém
CLDC
MIDP
CVM
CDC
PDA Základní
RMI OsobníProfily
Konfigurace
Virtuální stroj
Konfigurace definují programové vybavení pro určité skupiny zařízení. Tyto skupiny jsou rozlišeny podle typu a velikosti paměti, typu a rychlosti procesoru a síťového připojení.
Konfigurace zahrnuje virtual machine, knihovny, třídy a API funkce.
Rozlišují se dvě J2ME konfigurace:
• CDC (Connected Device Configuration )
• CLDC (Connected Limited Device Configuration )
Konfigurace
Tato konfigurace je zaměřena na zařízení s větším paměťovým prostorem (více než 2 MB), s 32 bitovým procesorem a síťovým připojením.
Výkonná zařízení umožňují použití plného virtuálního stroje Javy, který zahrnuje:
•podporu plovoucí řádové čárky
•JNI (Java Native Interface)
•možnost definovat zavaděče tříd
•serializaci objektů
•reflexi
CDC (Connected Device Configuration)
• základní profil – rozšiřuje základní CDC knihovny. Neposkytuje třídy pro uživatelské rozhraní. Slouží jako základ pro další profily (osobní a RMI).
• RMI profil (Remote Method Invocation) – pro dané zařízení představuje rozšíření základního profilu.
• osobní profil – zahrnuje uživatelské rozhraní
• herní profil – podpora pro hry
Profily CDC
Profil doplňuje konfiguraci tak, že výsledná aplikace je lépe přispůsobena vlastnostem dané skupiny zařízení.
Jedná se o nejmenší definovanou konfiguraci Javy. Uplatňuje se zejména v bezdrátových zařízeních s omezenými zdroji (mobilní telefony, pagery, PDA).
CLDC je určen pro zařízení s paměťovým prostorem do 512kB a 16-ti nebo 32-bitovým procesorem.
CLDC definuje virtuální stroj Javy a minimální množinu knihoven a tříd.
CLDC (Connected Limited Device Configuration )
Virtuální stroj Javy (KVM) má z důvodu úspory paměťového prostoru a snížení zátěže procesoru tyto hlavní omezení:
•nepodporuje plovoucí řádovou čárku
•nelze použít finalizaci
•omezení zpracování chyb
•JNI (Java Native Interface) není k dispozici
•neumožňuje zavedení zavaděče tříd
•chybí skupiny vláken
Zabezpečení CLDC
•na úrovni virtuálního stroje
•na úrovni aplikace
Virtuální stroj pro CLDC
• Profil PDA – poskytuje programové prostředky uživatelského rozhraní a ukládání dat v zařízeních PDA.
• Profil MIDP
Profily CLDC
Profil doplňuje konfiguraci tak, že výsledná aplikace je lépe přispůsobena vlastnostem dané skupiny zařízení.
• Displej musí mít minimálně 96x54 pixelů a dvě barvy.
• Klávesnice popř. dotyková obrazovka.
• 32 KB paměti pro práci Javy, 128 KB stálé paměti pro komponenty MIDP a 8KB stálé paměti pro dlouhodobé ukládání dat aplikací.
• Možnost obousměrného síťové spojení.
Profil MIDP
MIDP (Mobile Information Device Profile) je používán pro bezdrátová zařízení (mobilní telefony a pagery) konfigurace CLDC. Tato zařízení musí splňovat tyto parametry:
Architektura MIDP
MID
MIDP Applications OEM-Specific App.
MIDP
OEM-Specific Classes
CLCD
Native System Software
• MID – reprezentuje hardware
• Native System Software – operační systém
• OEM-specific Classes – definované nad CLCD a MIDP výrobcem zařízení
Java aplikace pro MIDP se nazývají MIDlety. Lze vytvořit soupravu MIDletů. S ní se pak v zařízení pracuje jako s celkem.
MIDlet
•Správa průběhu aplikací
•Uživatelské rozhraní
•Připojitelnost k síti
•Ukládání dat v zařízení
MIDP řeší následující problémy
Správa průběhu aplikací
MIDlet obsahuje třídy a metody pro řízení průběhu aplikace. MIDlet se může nacházet ve třech stavech: přerušený, aktivní nebo zrušený.
Přechody mezi jednotlivými stavy:
Přerušený Aktivní
Zrušený
Spuštění MIDletu
Start nebo znovu spuštění zařízením nebo MIDletem
Uživatel ukončí MIDlet
Ukončení MIDletem
Uživatel ukončí MIDlet
Přerušení od MIDletu nebo zařízení
Zařízení s MIDP jsou schopna zobrazit pouze jedno uživatelské okno. Pokud ve stejný okamžik běží více MIDletů, pouze jeden z nich má umožněn výstup na displej.
Pro MIDlet jsou definovány třídy a metody pro vytvoření grafického uživatelského rozhraní.
Uživatelské rozhraní
MIDP rozšiřuje CLDC o podporu HTTP. To lze implementovat pomocí protokolu TCP/IP a jiných protokolů (např. použití WAP). Jsou podporovány protokoly TCP (Transport Control Protocol) a UDP (User Datagram Protocol).
Síťové připojení
Ukládání dat v zařízení
MIDP umožňuje provést pernamentní uložení dat. To je řešeno pomocí systému správy záznamů (RMS – Record Management System).
• MIDlety mohou manipulovat se záznamy a sdílet záznamy v jedné aplikaci.
• Neni možné přistupovat k databázím jiné soupravy MIDletů.
• Dvě databáze shodných jmen lze vytvořit pouze pro dvě různé aplikace.
Před instalací do daného zařízení se ze všech MIDletů aplikace vytvoří soubor JAR (Java Archive). Do něj jsou zabaleny všechny potřebné třídy aplikace (kromě tříd samotného MIDP), obrázky a jiné soubory.
Informace o obsahu souboru JAR jsou uloženy do souboru manifest, který je jeho součástí. Podobné informace jsou také uloženy do souboru JAD (Java application descriptor). Manifest a JAD jsou textové soubory obsahující pouze jména a hodnoty atributů použitých pro identifikaci a instalaci aplikace.
Distribuce MIDletů
Při zahájení stahování aplikace do zařízení na straně klienta se nejprve místo přenosu JAR souboru přenese malý popisující soubor JAD. Dojde tím k ušetření času v případě, že se ukáže na základě informací v JAD aplikace nevyhovující.
Instalace aplikace
• J2ME Wireless Toolkit 1.0.4
• Simplicity for Mobile Devices
• BlackBerry Java Development Environment
• WHITEboard
Programovací nástroje
Ukázky MIDletů
• Uživatelské rozhraní
• Ukládání dat v zařízení
• Síťové připojení
• J2ME in a Nutshell, Kim Topley, O´Reilly&Associates, USA, 2002• Naučte se Java 2 Micro Edition, Qusay H.Mahmoud,
Grada Publishing a.s., Praha, 2002• http://java.sun.com• http://www.jcp.org• http://www.javaforsiemens.tk
Zdroje
Přehled zkratekCDC - Connected Device Configuration
CLDC - Connected Limited Device Configuration
J2SE - Java 2 Standard Edition
J2EE - Java 2 Enterprise Edition
JNI - Java Native Interface
KVM - Java Virtual Machine
MIDP - Mobile Information Device Profile
RMI - Remote Method Invocation
RMS - Record Management System
TCP - Transport Control Protocol
UDP - User Datagram Protocol
PGN - Portable Network Graphics Format
Konec prezentaceKonec prezentace