Přeskočit na obsah

Java ME

Z Wikipedie, otevřené encyklopedie

Java Platform, Micro Edition (neboli Java ME, dříve označovaná jako Java 2 Micro Edition nebo J2ME) je jedna z několika základních platforem Javy (spolu s Java SE a Java EE) a Java Card). Někteří považují Java Card za podsoučást Java ME. Jedná se o podmnožinu Java platformy SE, s cílem nabídnout sbírku API určenou pro vývoj software pro malá zařízení a zařízení s omezenými prostředky.

Java ME bylo vyvinuto firmou Sun Microsystems a nahrazuje dřívejší technologii, tzv. PersonalJava. Bylo vydáno pod licensí GNU General Public License.


Connected Limited Device Configuration (CLDC)

CLDC je určen především pro mobilní telefony či PDA s malou pamětí. Aplikace v CLDC konfiguraci se nazývají MIDlety (hlavní třída je potomkem abstraktní třídy javax.microedition.midlet.MIDlet). V současné době drtivé množstí výrobců mobilních telefonů implementuje CLDC ve svých výrobcích.


Nároky na pamět:

Vyžaduje 160 kb ROM a 32 kB RAM. Specifikace CLDC nevyžaduje po implementaci použití žadného konkrétního virtuálního stroje (VM), nicméně Sun Microsystems poskytuje referenční VM - tzv.

Kilobyte Virtual Machine, s velmi malými paměťovými nároky. CLDC konfigurace 1.0 obsahuje tyto balíčky [1]

  • java.io - poskytuje vstupní a výstupní datové proudy
  • java.lang - poskytuje třídy nutné pro návrh v programovacím jazyce Java
  • java.util - obsahuje framework kolekcí, nástroje pro usnadnění práce s datem a časem, a další různorodé nástroje
  • javax.microedition.io - třídy pro správu všeobecného spojení

Základní syntaxe jazyka Java je stejná, jako ve všech ostatních edicích. V podstatě se jedná o Java SE o několik let zpět. Protože CLDC používá redukovaný virtuální stroj KVM, který neobsahuje plnohodnotný verifikátor bytekódu jako Java Virtual Machine, musí být kód preverifikován při kompilaci. Zajímavostí je, že CLDC neuvažuje o vstupu z klávesnice a výstupu na obrazovku, to zařizují až samotné profily. V březnu 2003 vyšla specifikace CLDC 1.1, umožňující větší podporu zařízení s většími zdroji.


Profily spadající pod CLDC

Profily doplňují konfigurace o další třídy, které poskytují specifické vlastnosti pro dané typy zařízení. Oba typy konfigurací mají své profily.

Mobile Information Device Profile (MIDP)

MIDP profil je určen především pro mobilní zařízení (vzhledem k tomu, že náleží k CLDC, tak především pro mobilní telefony). Tento profil přidavá k CLDC práci se sítí, uživatelské rozhraní (UI) a lokalní uložistě. Profil je zaměřen na zařízení s omezenou funkcionalitou zobrazování a ukládání informací. Z toho důvodu poskytuje relativně jednoduché UI a základní síťovou komunikaci založenou na protokolu HTTP 1.1. MIDP patří mezi nejznámější Java ME profily a tvoří základ technologie Wireless Java.

MIDlety běží v zařízení z bezpečnostních důvodů v tzv. sandboxu, neboli na svém vlastním pískovišti, které nemůže opustit.

Ke knihovnám specifikovaným v CLDC přidává MIDP 1.0 (vydáno říjen 2000) další:

  • javax.microedition.rms - správa persistence dat
  • javax.microedition.midlet - třída MIDlet, která je základní třídou MIDP profilu
  • javax.microedition.io - zejména třída HttpConnection
  • javax.microedition.lcdui - třídy pro tvorbu uživatelského rozhraní

MIDP 2.0 (vydáno listopad 2002) rozšiřuje dále funkcionalitu o následující balíky:

  • javax.microedition.media - přehrávání multimedií. Jedná se o podmnožinu JSR 135 Java Mobile Media API
  • javax.microedition.lcdui.game - herní API zaměřené na jednoduché 2D hry
  • javax.microedition.pki - autentizační API pro zabezpečené přípojení
  • zavádí možnost práce s desetinnými čísly.

MIDlet

MIDlet je javová aplikace, postavená na základě MIDP profilu. Mohou to být různé aplikace pro mobilní a jiná zařízení, jako např. hry. Hlavní soubor MIDletu je soubor .jar, který obsahuje třídy programu, zdroje (obrázky, atd.) a manifest (soubor určující hlavní třídu a další informace).

Distribuce MIDletů často obsahují také soubor .jad, který obsahuje adresu .jar souboru a další informace o .jar souboru a jeho výrobci. Některé implementace mohou přítomnost .jad souboru vyžadovat, případně na jeho základě odmítnout instalaci MIDletu.

MIDlet musí splňovat následující požadavky, aby běžel na mobilním telefonu:

  • MIDlet musí být zabalen do .jar souboru
  • hlavní třída musí být potomkem javax.microedition.midlet.MIDlet
  • .jar soubor musí být preverifikován použitím preverifikátoru.
  • v některých případech musí být .jar soubor podepsán mobilním operátorem

Pokud je v .jad souboru popsáno více MIDletů, tvoří dohromady jeden MIDlet suite. Celá MIDlet suite může pak sdílet společné databáze (použitím tříd balíčku javax.microedition.rms) a společné proměnné, které se ukládají do .jad souboru. MIDlety jsou narozdíl od appletů limitovány na použítí jednoduchého uživatelského rozhraní LCDUI. Existuje také mnoho dalších aspektů, které musí programátoři MIDletů vzít v úvahu.


Životní cyklus MIDletu


Information Module Profile (IMP)

IMP spadá pod CLDC konfiguraci, je to profil pro jednoduchá zařízení buď s jednoduchým displejem nebo bez displeje, s omezenou možností připojení k síti, většinou prodejní automaty nebo jednoduché bezpečnostní systémy.

Profil IMP je úzce spojen s profilem MIDP (jak 1.0, tak i nasledným 2.0), je to v podstatě jeho podmnožina, okrájená o možnost tvorby uživatelského rozhraní (především o balíček javax.microedition.lcdui).

Connected Device Configuration (CDC)

Tato konfigurace je určena k použití v zařízeních, které potřebují kompletní implementaci Java virtual machine. Konkrétní sada API může (v závislosti na daném profilu) obsahovat celou Java Platformu SE. Typické implementace používají podmnožinu API, v závislosti na podporovaných profilech. [2]

Aplikace se nazývají Xlety. Tato zařízení mohou díky větší paměti a procesorovému výkonu využívat z javového prostředí daleho více. CDC se objevuje u PDA, smartphonů, set-top boxů atd.

Nároky na systémové prostředky:

Vyžaduje 32bitový procesor a alespoň 512 kB ROM a 256 kB RAM. Konfigurace CDC pracuje s profily Foundation Profile, Personal Basis Profile a Personal Profile.

Platforma Java TV

Java TV je nová konfigurace Java ME, určená speciálně pro tvorbu interaktivních televizních služeb. Podle zdrojů z května 2009 implementují tuto

platfarmu tito výrobci: [3]

  • MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD.
  • PHILIPS CONSUMER ELECTRONICS
  • SONY ELECTRONICS
  • LG ELECTRONICS
  • HONGKONG TELECOM
  • OPENTV
  • TOSHIBA

Podle slov výrobce [4] bude moci programovací rozhraní Java TV poskytnout vývojářům vysoký stupeň kontroly nad

vzhledem aplikací a flexibilitu při jejich vytváření, a uživatelům interaktivních televizí poskytne dynamický a podmanivý zážitek. Aplikace jsou stejně jako u aplikací CDC tzv. Xlety, hlavní třídy musí být potomky abstraktní třídy javax.tv.xlet.Xlet.

Související články

Externí odkazy